У меня есть functionв моем .bashrcфайле. Я знаю, что он делает, он увеличивает X каталогов сcd
Вот:
up()
{
local d=""
limit=$1
for ((i=1 ; i <= limit ; i++))
do
d=$d/..
done
d=$(echo $d | sed 's/^\///')
if [ -z "$d" ]; then
d=..
fi
cd $d
}
Но можете ли вы объяснить эти три вещи из этого для меня?
d=$d/..sed 's/^\///'d=..
Почему бы просто не сделать так:
up()
{
limit=$1
for ((i=1 ; i <= limit ; i++))
do
cd ..
done
}
Использование:
<<<>>>~$ up 3
<<<>>>/$
$OLDPWDбыть растоптанным пришло на ум. И на zsh сcdустановленным для использования dirstack, это тоже.