Bash Stdout重定向在solaris 10上

时间:2013-12-16 20:07:57

标签: bash redirect solaris stdout

好的,这是有效的:

trace -t lstat64 -v lstat64 ls "myfilename" 2>pipefile
cat pipefile | grep ct | cut -d '[' -f 2 | cut -d ' ' -f 2

但我不想使用文件“pipefile”,如何将输出直接重定向到我的grep并剪切?

2 个答案:

答案 0 :(得分:0)

我明白了,我才意识到我正在与stdout混淆,这是我的解决方案:

trace -t lstat64 -v lstat64 ls "myfilename" 2>&1 | grep ct | cut -d '[' -f 2 | cut -d ' ' -f 2

答案 1 :(得分:0)

那么,你想忽略stdout而只考虑stderr?

trace -t lstat64 -v lstat64 ls "myfilename" 2>&1 1>/dev/null | 
  grep ct | cut -d '[' -f 2 | cut -d ' ' -f 2

首先,将stderr文件句柄重定向到stdout文件句柄引用的任何内容,然后将stdout文件句柄重定向到/ dev / null。然后grep可以从stdin中读取trace的stderr发出的任何内容。