tail - 如何抑制错误并仅显示 du Linux 命令的最终输出
问题描述
运行 du 命令显示以下输出 -
[pz@texualp ~]$ du -s /My-Data/
du: cannot read directory ‘/My-Data/ROMANIEI/smart/store’: Permission denied
du: cannot read directory ‘/My-Data/ROMANIEI/smart/data’: Permission denied
du: cannot read directory ‘/My-Data/ROMANIEI/smart/temp’: Permission denied
du: cannot read directory ‘/My-Data/ROMANIEI/smart/spool’: Permission denied
2900883608 /My-Data/
[pz@texualp ~]$
仅显示最后一行(即2900883608 /My-Data/)的方式是什么?
我也试过 - du -s /My-Data/ | tail -n1
,但没有奏效。
我还想知道是否有任何方法只显示大小(即2900883608)。
解决方案
正如评论中提到的那样,您应该重定向STDERR
(打印这些错误的位置)。这可以通过这种方式完成:
du -s /My-Data/ 2>/dev/null
PS 如果您没有读取特定目录的权限,您将无法获得正确的结果,您将只看到您有权限的目录的大小。
推荐阅读
- php - 基于嵌套键值对获取不同的关联数组
- reactjs - 使用 typescript 接口推断 propType 并返回子错误
- python - 如何使用 django 计算 defs 的总数?
- python - Ipython - 会话之间的持久变量
- c - 当我传递“不开心”的数字(例如 21)时没有输出
- python - 如何在 puppeteer 中通过实验性 chrome 选项
- c++ - 为什么 const std::pair
& 在 std::map 上基于范围的 for 循环不起作用? - codenameone - 来自代号一的 RMTP 广播
- excel - Excal VBA - Format("7A", "00") 输出 "00",而 Format("7B", "00") 产生所需的 "7A" 输出。为什么它们不同?
- vue.js - 在 vue 组件中使用 svg-gauge