bash - 如何在 OEL 中使用 shell 获取挂载点 Use%
问题描述
我想获得安装点的使用百分比。我尝试过关注,但在某些主机上我得到了 Use% 但在某些主机上我得到了 Avail
df -hT /u01/data/backup | awk '{ print $5 }' | egrep -e % | cut -d "%" -f 1
有没有更好的办法
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 38G 18G 19G 48% /
tmpfs 30G 0 30G 0% /dev/shm
/dev/sda1 200M 276K 200M 1% /boot/efi
/dev/sdc2 22G 6.8G 14G 34% /u01/app/oracle/tools
/dev/mapper/vg_domain-lv_domain
50G 1.2G 46G 3% /u01/data/domains
/dev/mapper/vg_middleware-lv_middleware
24G 5.6G 17G 26% /u01/app/oracle/middleware
/dev/mapper/vg_jdk-lv_jdk
3.9G 402M 3.3G 11% /u01/jdk
/dev/mapper/vg_suite-lv_suite
50G 52M 47G 1% /u01/app/oracle/suite
132.240.151.43:/interface
600G 55G 546G 10% /interface
解决方案
awk
可以匹配,%
从输出中删除字符并将输出限制为Use%
列的值。
与主机无关的通用版本可能是:
df -hT|awk '{for (i=1;i<=NF;i++)if ($i~/Use%/){u=i}};NR>1{sub(/%/,"",$u);print $u}'
这会在 中找到匹配Use%
并捕获该字段编号的字段u
。然后,如果记录号 ( NR
) 大于 1,则将u
字符串中的百分比字符sub
替换为空字符串并u
打印 的值。
推荐阅读
- java - 从抽屉中的片段到 LoginActivity 的意图
- go - map[int]interface{} 与 map[int]struct{} 的内存分配
- r - R中特定值上方的颜色异常点
- javascript - 使用 keyup 上的 javascript 在 HTML 中自动计算
- bash - 不包含特定文本的 AWK 打印块
- r - 在 R 中使用 sprintf 绘制字符串序列
- html - 如何在 Gmail 中呈现 CSS 边框?
- python - 如何在不使用列表的情况下获得第一和第二大输入?
- python - 使用 Data 作为分割点将数据帧一分为二
- swift - 仅从 SHA256.hash(data:) 获取哈希?