使用nohup运行命令的简单或别名

时间:2018-06-12 14:59:25

标签: linux bash nohup

我有一些长时间运行的进程,我使用nohup运行并将任何输出重定向到日志。由于我通常喜欢直接监控,至少在开始时,我也添加尾部。最终看起来像这样。

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

不是说这太复杂了,但我希望我能找到一种为它创建别名的方法。我可以用一个包装器脚本来做这件事,但是我并不想让每个进程基本上有两个脚本来混乱这个目录(因此我想到了一个别名)。谢谢!

1 个答案:

答案 0 :(得分:1)

别名是一个单词,当它是命令的第一个单词时,会被其他东西(命令的较长片段)替换。它不能接受争论。

但是,您可以编写一个shell函数(在.bashrc中)来进行所需的处理(并将进程名称和日志文件作为参数传递)。

它可能看起来像这样(在.bashrc中):

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

你这样运行:

no-hup myprocess.sh 20180611.log