SH 脚本:Red Hat Linux Enterprise(Santiago 和 Tikanga)的问题

SH Script: Problem with Red Hat Linux Enterprise (Santiago and Tikanga)

我制作了一个脚本,以便在 root、var、tmp、opt 和 usr 等分区上获得免费 space。但是我有 3200 个运行良好的系统,还有另外 1186 个系统,主要是 RHEL(Tikanga 和 Santiago),以及一些运行异常的 CentOS 派生版本。但是像RHEL(麦婆)这样的系统运行的很好。

此外,我无法亲自连接到那些服务器以进行故障排除。我可以 运行 远程脚本。

#!/bin/sh

df -h / /var /tmp /opt /usr > /freespace.txt

rootSpace=$(awk 'NR==2 { print  }' /freespace.txt)
varSpace=$(awk 'NR==3 { print  }' /freespace.txt)
tmpSpace=$(awk 'NR==4 { print  }' /freespace.txt)
optSpace=$(awk 'NR==5 { print  }' /freespace.txt)
usrSpace=$(awk 'NR==6 { print  }' /freespace.txt)

customSpace="root=$rootSpace,var=$varSpace,tmp=$tmpSpace,opt=$optSpace,usr=$usrSpace"

为什么 DF 不提供相同的输出以便使用 AWK 对它们进行排序?

如果你想解析 df 的输出,我建议使用 df -hP

-P: use the POSIX output format

无论设备名称多长,这都会使所有信息保持在一行中。