简单地或别名 运行 带有 nohup 的命令
Simply or Alias running a command with nohup
我有一些很长的 运行ning 进程,我 运行 使用 nohup 并将任何输出重定向到日志。由于我平时喜欢直接监听,至少在开始的时候,我也加了个尾巴。这最终看起来像这样。
nohup myprocess.sh >> 20180611.log 2>&1 & tail -f 20180611.log
并不是说这太复杂了,但我希望我能找到一种方法来为它创建一个别名。我可能可以用一个包装脚本来做到这一点,但我不想让每个进程基本上有两个脚本的目录变得混乱(因此我想到了一个别名)。谢谢!
别名是当它是命令的第一个词时被其他东西(命令的较长片段)替换的词。它不能接受参数。
但是,您可以编写一个 shell 函数(在您的 .bashrc
中)来执行您想要的处理(并将进程名称和日志文件作为参数传递)。
它可能看起来像这样(在 .bashrc
中):
function no-hup() {
nohup "" >> "" 2>&1 & tail -f ""
}
export -f 'no-hup'
你运行是这样的:
no-hup myprocess.sh 20180611.log
我有一些很长的 运行ning 进程,我 运行 使用 nohup 并将任何输出重定向到日志。由于我平时喜欢直接监听,至少在开始的时候,我也加了个尾巴。这最终看起来像这样。
nohup myprocess.sh >> 20180611.log 2>&1 & tail -f 20180611.log
并不是说这太复杂了,但我希望我能找到一种方法来为它创建一个别名。我可能可以用一个包装脚本来做到这一点,但我不想让每个进程基本上有两个脚本的目录变得混乱(因此我想到了一个别名)。谢谢!
别名是当它是命令的第一个词时被其他东西(命令的较长片段)替换的词。它不能接受参数。
但是,您可以编写一个 shell 函数(在您的 .bashrc
中)来执行您想要的处理(并将进程名称和日志文件作为参数传递)。
它可能看起来像这样(在 .bashrc
中):
function no-hup() {
nohup "" >> "" 2>&1 & tail -f ""
}
export -f 'no-hup'
你运行是这样的:
no-hup myprocess.sh 20180611.log