bash - 如何删除 df 命令中的标头?
问题描述
我正在尝试编写一个 bash 命令,该命令将根据他们使用并尝试使用的数据量对所有卷进行排序
df | awk '{print $1 | "sort -r -k3 -n"}'
输出:
map
devfs
Filesystem
/dev/disk1s5
/dev/disk1s2
/dev/disk1s1
但这也显示了名为 Filesystem 的标头。我该如何删除它?
解决方案
df
从with的输出中计算行数wc
,然后减去一行以输出无标题df
with tail
...
LINES=$(df|wc -l)
LINES=$((${LINES}-1))
df | tail -n ${LINES}
好的-我看到oneliner-这是我的...
DF_HEADERLESS=$(LINES=$(df|wc -l); LINES=$((${LINES}-1));df | tail -n ${LINES})
对于格式化的输出,让 printf 循环它......
printf "%s\t%s\t%s\t%s\t%s\t%s\n" ${DF_HEADERLESS} | awk '{print $1 | "sort -r -k3 -n"}'
推荐阅读
- docker - 如何在引导程序上配置 Graylog 插件(非交互式)?
- ruby-on-rails - Heroku 上 Sidekiq dyno 的提前时间
- vuejs2 - Vue 组合 API 在 v-for 中没有反应性?
- c++ - 将 QSettings 与存储在 QByteArray 或 QIODevice 中的数据一起使用?
- flutter - 如何将背景过滤器应用于整个屏幕,但在颤动中减少特定的小部件?
- javascript - 两个组件分别管理自己的状态和道具
- python - 如何在 Python 中编码/解码 JIS X 208、JIS X 212 和 JIS X 213 kuten 字符代码?
- c++ - 结构定义中的 VS2019 alignas 推翻了 pragma pack
- c++ - 为什么我的代码需要这么长时间才能运行,为什么它的运行时会有很大的变化?
- azure - 我看到在诊断和解决我的 Azure 应用服务中报告了 502 错误