Я пытаюсь создать инструмент, который определяет функции в zsh, основанные на некоторых именованных каталогах. В настоящее время у меня есть это:Определение функций zsh в цикле переназначает pre
while read line; do
p=(`echo $line | egrep -o -e "[^ ]+"`)
alias go${p[1]}="cd ${p[2]}"
put${p[1]}()
{
mv $1 ${p[2]}
}
done < "$HOME/.pro_targets"
, который работает для псевдонимов, но набрав поставил [цель] в командной строке дает мне
mv: cannot mv 'wol.sh' to '$HOME/work/tagfs/fuse-tutorial/src': No such file or directory
который относится к последнему значению $p
. Я думаю, мне нужна функция, чтобы закрыть переменную ${p[2]}
и заменить ее на окружающую среду, когда она была определена, поэтому она может варьироваться в зависимости от каждого определения.
$ HOME не получает расширена, и она ищет пути буквально под названием «$ HOME/работа/... –