Просто или Alias ​​запускает команду с nohup - PullRequest
0 голосов
/ 12 июня 2018

У меня есть несколько запущенных процессов, которые я запускаю с помощью nohup и перенаправляю любой вывод в журнал.Поскольку я обычно люблю контролировать напрямую, по крайней мере, в начале, я также добавляю хвост.В итоге это выглядело примерно так.

nohup myprocess.sh >> 20180611.log 2>&1 & tail -f 20180611.log

Не то чтобы это было очень сложно, но я надеялся, что смогу найти способ создать для него псевдоним.Вероятно, я мог бы сделать это с помощью сценария-обертки, но я не хотел загромождать каталог, по сути, двумя сценариями на процесс (отсюда я думал о псевдониме).Спасибо!

1 Ответ

0 голосов
/ 12 июня 2018

Псевдоним - это слово, которое заменяется чем-то другим (более длинный фрагмент команды), когда оно является первым словом команды.Это не может принимать аргументы.

Однако вы можете написать функцию оболочки (в вашем .bashrc), чтобы выполнить необходимую обработку (и передать имя процесса и файл журнала в качестве аргументов).

Это можетвыглядит так (в .bashrc):

function no-hup() {
    nohup "$1" >> "$2" 2>&1 & tail -f "$2"
}
export -f 'no-hup'

Вы запускаете это так:

no-hup myprocess.sh 20180611.log
...