mkdircd

Régóta hiányoltam egy "

mkdircd

" parancs meglétét, hiszen az ember nagyon gyakran ha készít egy könyvtárat, akkor azonnal bele is akar menni, hogy ott tevékenykedjen. De nem tettem semmit, egészen mostanáig, amikor is írtam rá magamnak egy egyszerű függvényt, amit be is raktam a

.bashrc

file-omba. Az alias nem megoldás, mert azzal nem lehetne a paramétereket lekezelni és a külső script irás sem jó, mert akkor meg a cd nem fog működni.
Ha valakinek teszik használja egészséggel. Ha valaki tudja ezt szebben/egyszerűbben/jobban, azt szívesen látnám a kommentek között. A működése megegyezik az

mkdir

-ével (nem is csoda, hiszen azt használja és átad minden paramétert), de utána rögtön be is lép az elkészült könyvtárba (vagy az első megadott könyvtárba, ha többet csinálsz egy paranccsal).


mkdircd() {
  mkdir "$@"
  while [ ! -d "$1" ] && [ $# -gt 0 ]
  do
    shift
  done
  [ $# -gt 0 ] && cd "$1"
}

Hozzászólások

Csak egy apróság: inkább használd ezt a formát: mkdir "$@"
("$@" can be used to access arguments, verbatim, without loosing null arguments or splitting arguments with spaces).

Ugyanígy az utolsó parancs legyen cd "$1"

What about this: mkdir -p valami/valahol && cd $_

Ezzel nekem az a bajom, hogy igy nem csinaltal semmit. Szerintem ezt a parancsot meg sose adtad ki, legfeljebb azert, hogy megnezd mukodik-e. :) De most tenyleg, te ezt hasznalod/hasznalnad? Ok, hogy azt csinalja amit kell, de a lenyegi problemat nem oldja meg. Nem kell tole lenyegesen kevesebbet gepelni.

Az mkdir parancsnak a legvégén sorolhatod fel, hogy milyen könyvtárakat akarsz létrehozni, minden kapcsolót a könyvtárak előtt kell megadnod.

function mkdircd() { mkdir "$@" && cd $_; }

Ez annyiból más mint a tiéd, hogy az utolsónak megadottba lép be. Mi a lényegi probléma amivel ezt nem oldottam meg?

Az alias nem megoldás, mert azzal nem lehetne a paramétereket lekezelni

de lehet. viszont tényleg nem jó, mert csak a cd-t tudnád paraméterezni.
nekem ilyen van:


md () 
{ 
    mkdir -p "$@" && cd "$@"
}

a cd utáni $@ az elsõ könyvtárba lép bele, nem a legutóbbiba, de mindig csak egy könyvtárnévvel használom.

~~~~~~~~
http://www.youtube.com/watch?v=VbUVqODL1nE

Rovidebbnek rovidebb, de semmikepp nem jobb, az mkdirhez tovabbi kapcsolok hasznalata eseten a kapcsolokat a cd-nek is tovabb adod. Ami lehet, hogy nem fog bajt okozni, de azert nem szep.
Amugy viszont az enyem is az elso konyvtarba lep be (de minimalis valtoztatassal meg lehetne ezt forditani).