2.13 Throwing Output Away
问题
有时你并不想把输出保存到文件;或者说,你完全不想看到任何输出。
解决方案
将输出重定向到 /dev/null,如下所示:
find / -name myfile -print 2> /dev/null
或
noisy > /dev/null 2>&1
讨论
你可以把不想要的输出重定向到一个文件,等输出完毕后再删除它。但还有一个更简便的方法。Unix 和 Linux 系统有一个特殊的设备,这个设备实际上完全不存在,仅仅是一个用于转储不想要数据的比特桶(bit bucket)。这个设备就是 /dev/null,它对此场景来说非常合适。写入这个设备的所有数据都会被直接抛弃,所以它不会占用任何磁盘空间。利用重定向功能就能非常容易地解决此问题。
在第一个例子中,只有流向标准错误的输出才会被抛弃。第二个例子中,标准输出和标准错误都会被忽略。
极个别情况下,你发现所处的环境中 /dev 位于只读文件系统中(例如,某些信息安全设备),在这种情况下,还是建议你使用最初的建议,即写入一个文件然后删除。
您必须登录才能发表评论。