如何重定向在后台运行的 csh 脚本的输出

How to redirect the output of csh script that runs in background

我正在 运行并行运行多个 csh 脚本(每个脚本有 2 个参数),它们在后台执行许多有趣的操作(细节对我的问题并不重要)。到目前为止,我 运行 将它们设置为:

my_script arg1 arg2 &
my_script arg3 arg4 & 
...

这很好用,但我希望脚本的每个 运行 都将其标准输出重定向到日志文件中。如果我执行以下命令效果很好:

my_script arg1 arg2 >! somefile.log

问题是我需要 运行 至少并行执行这些脚本中的 5 个(每个脚本的背景)。当我尝试以下顺序时,作业已分派但报告为 "Suspended (tty output)" 并且日志文件未更新:

my_script arg1 arg2 >! somefile.log &
my_script arg3 arg4 >! somefile1.log &
my_script arg5 arg6 >! somefile2.log &
....

关于这个问题的任何想法。哦...我也忘了提到我需要使用 CSH 不幸的是我不能切换到 bash 或其他任何东西。

非常感谢!

请尝试

nohup my_script arg1 arg2 < /dev/null >! somefile.log &

你也可以试试

stty -tostop

管理终端模式