通常,当我重定向从 C Shell 脚本运行的程序的输出时,>
或 >&
都可以工作,但这些不适用于 CentOS v.2.16.0 版本 5.8(最终)Gnome 桌面中的日志文件的基本输出重定向。
当我尝试在 C shell 脚本中使用 >
或 >&
将程序输出重定向到文本/日志文件时,我得到了一个空的(空白)日志文件。是否正在进行某种缓冲,或者为什么当我在 C Shell 脚本中使用它时它不起作用?
郑重声明,>&
在命令提示符/控制台上确实可以正常工作,但同样的语法在我的 C Shell 脚本中不起作用。有什么解决办法吗?我已经尝试过 cat
、tee
、1>&
、2>&1
及其输出重定向的每种变体,但没有任何程序将输出获取到我的 C Shell 脚本中的文本日志文件中。
(请不要讲“你为什么使用 C Shell”。)
最佳答案
我知道这已经很旧了,但我必须通过将两者分开来使其工作
ls / 2> /dev/null 1> /dev/null
为了测试这是否有效,我回显了退出代码。
ls /dir/doesnt/exisst 2> /dev/null 1> /dev/null && echo $0
ls / 2> /dev/null 1> /dev/null && echo $0
关于linux - 基本程序输出重定向在 CentOS V.2.16.0 版本 5.8 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19328493/