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% /