[Bash] wytłumaczenie prostego skryptu
: 30 sie 2012, 20:48
Witam,
Proszę o wytłumaczenie prostego skryptu.
Wydaję np. polecenie w katalogu /home/tomek/bash o treści:
./funcd test i dostaję wynik:
/home/tomek/bash --> /home/tomek/bash/test
Chodzi o to, że tak jak rozumiem ten skrypt to powinien on przenieść mnie do katalogu /home/tomek/bash/test i wypisać /home/tomek/bash (czyli stary katalog w którym byłem) i /home/tomek/bash/test (katalog w którym obecnie jestem). Problem polega na tym, że ten skrypt nie przenosi mnie do katalogu test tylko wypisuje /home/tomek/bash --> /home/tomek/bash/test a dalej jestem w tym samym katalogu(/home/tomek/bash/)
Jakiś błąd w rozumowaniu pewnie robię i proszę o wytłumaczenie w czym tkwi błąd.
Proszę o wytłumaczenie prostego skryptu.
Kod: Zaznacz cały
#!/bin/bash
cd()
{
builtin cd "$@"
echo "$OLDPWD --> $PWD"
}
cd $1
./funcd test i dostaję wynik:
/home/tomek/bash --> /home/tomek/bash/test
Chodzi o to, że tak jak rozumiem ten skrypt to powinien on przenieść mnie do katalogu /home/tomek/bash/test i wypisać /home/tomek/bash (czyli stary katalog w którym byłem) i /home/tomek/bash/test (katalog w którym obecnie jestem). Problem polega na tym, że ten skrypt nie przenosi mnie do katalogu test tylko wypisuje /home/tomek/bash --> /home/tomek/bash/test a dalej jestem w tym samym katalogu(/home/tomek/bash/)
Jakiś błąd w rozumowaniu pewnie robię i proszę o wytłumaczenie w czym tkwi błąd.