有人可以告诉我为什么我不能将标准错误重定向到/ dev / null吗?
xxx:xxx 84> find / -name trans.log 2> /dev/null
输出
查找:路径必须在表达式之前:2
答案 0 :(得分:0)
我相信您正在寻找的是 此类命令中的大于号(>)将程序的输出重定向到某处。在这种情况下,某些内容将被重定向到/ dev / null,某些内容将被重定向到&1
xxx:xxx 84> find / -name trans.log >/dev/null 2>&1
如果您未指定数字,则假定使用标准输出流,但是您也可以重定向错误
> file redirects stdout to file
1> file redirects stdout to file
2> file redirects stderr to file
&> file redirects stdout and stderr to file
/dev/null
是空设备,它将接收您想要的任何输入并将其丢弃。它可以用来抑制任何输出。
答案 1 :(得分:0)
似乎您的shell不会解释shell表达式“ 2>”,而是将此参数传递给find命令
查找:路径必须在表达式之前:2
这里的“ 2”似乎是通过find作为表达式来分析的。
我无法在此处使用shell复制代码,但是如果您删除var intent = new Intent(this, typeof(MainActivity));
intent.PutExtra("0", player);
this.StartActivity(intent);
和player = MediaPlayer.Create(Application.Context, RingtoneManager.GetDefaultUri(RingtoneType.Ringtone));
之间的空格怎么办,那么2>
就是空白吗?