В любой оболочке можно использовать цикл:
for x in /etc/*.conf; do cp -i -- "$x" "$x.orig"; done
(Удалите -i
если Вы не заботитесь о перезаписи существующих файлов.)
С zsh можно использовать обеспеченную функцию zcm
(вставьте первые три строки Ваш ~/.zshrc
):
autoload zmv
alias zcp='zmv -C'
alias zln='zmv -L'
zcp '/etc/(*.conf)' '/etc/$1.orig'
(Добавьте -f
после zcp
перезаписывать любой существующий целевой файл.)
GNU coreutils nohup
страница справочника указывает, что можно использовать нормальное перенаправление:
Если стандартный вход является терминалом, перенаправьте его от/dev/null. Если стандартный вывод является терминалом, добавьте вывод к 'nohup.out', если это возможно, '$HOME/nohup.out' иначе. Если стандартная погрешность является терминалом, перенаправьте ее к стандартному выводу. Для сохранения вывода в ФАЙЛ используйте 'nohup КОМАНДУ> ФАЙЛ'.
Править: Я не прочитал Вашу ссылку сначала; у Вас может быть другая версия nohup
, хотя этот раздел предполагает, что можно все еще использовать нормальное перенаправление:
nohup.out The output file of the nohup execution if
standard output is a terminal and if the
current directory is writable.
Можно перенаправить стандартный вывод и стандартную погрешность в различные файлы:
nohup myprogram > myprogram.out 2> myprogram.err
или в тот же файл:
nohup myprogram > myprogram.out 2>&1
программа nohup &> program.out &
или
nohup program &>program.out, если вы не хотите запускать задание в фоновом режиме. Я использую это, когда запускаю несколько заданий одновременно и хочу ограничить их.
nohup program > program.out &
записать вывод вprogram.out
вместоnohup.out
– Jim Paris 20.08.2012, 23:38