有没有办法重命名我们使用 df -kh 命令获得的标题。我尝试了一种重命名标题并将主机名附加到其上的方法。但代码比较乱。有没有更干净的方法实现这一目标:-
#!/usr/local/bin/bash
df -h /dev/serv02ac | awk '{print $1,"\t",$2,"\t",$4, "\t",$5}' > newF
hostname > newF4
tail -n +2 newF >> newF4
tr '\n' '\t' < newF4 > newF2
echo 'Server Filesystem Total Capacity Amount Used %Full' > newF3
tail -n +1 newF2 >> newF3
echo '\n' >> newF3
cat newF3|mailx -s "Server Space Check" [email protected]
答案1
为什么不简单地将主机名作为变量传递到 awk 中?
awk -v hostname="$(hostname)" 'NR==1 {print "System" "\t" $0; next} {print hostname "\t" $0}'
例如,
$ df -kh /dev/dm-0 |
awk -v hostname="$(hostname)" 'NR==1 {print "System" "\t" $0; next} {print hostname "\t" $0}'
System Filesystem Size Used Avail Use% Mounted on
T61p /dev/dm-0 162G 127G 27G 83% /