solaris 10上的Bash标准输出重定向

solaris 10上的Bash标准输出重定向,bash,redirect,solaris,stdout,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和cut 我明白了,我刚刚意识到我把stderr和stdout搞混了,这是我的解决方案: trace -t lstat64 -v lstat64 ls "myfilenam

好的,这是有效的:

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

但是我不想使用文件“pipefile”,我如何将输出直接重定向到grep和cut

我明白了,我刚刚意识到我把stderr和stdout搞混了,这是我的解决方案:

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

那么,您想忽略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发出的任何信息。

呃,这个答案忽略了stdout并与stderr一起工作