Добавьте эту строку к Вашему ~/.zshrc
:
setopt menu_complete
Посмотрите man zshoptions
для деталей.
Путем помещения кавычек вокруг $cmd
, Вы просите, чтобы оболочка для выполнения команды назвала точно это. Нет команды, названной "для x в $ (..."; на самом деле в моей системе, нет даже команды, названной "для" - это - ключевое слово оболочки. Выполнять содержание $cmd
, необходимо будет использовать eval
.
Если Вы хотите подготовить команду к выполнению в той же оболочке, используйте функцию.
cmd () {
for x in $(my_command | grep keyword | cut -d" " -f1); do
command2 "arguments" $x
done
}
while true; do cmd; sleep 1; done
watch
затем? (см. ссылку на связанный вопрос в начале OP) – Amelio Vazquez-Reina 27.10.2011, 01:05watch
пример"$cmd"
передается как аргумент удару, который я предполагаю, объясняет, почему ему не нужноeval
– Amelio Vazquez-Reina 27.10.2011, 01:10