2つの異なるテキストファイル(行番号が等しい)を読み込み、各行の5番目の列を互いに比較したいと考えています。しかし、それは私にとってはうまくいかなかった。誰か助けてくれますか?ここに私のコード:AWKで2つの異なるテキストファイルから読み込んで各行の列を取得する
df -h --total>current_filesystem_usage.txt
if [ -s previous_months_filesystem_usage.txt ]
then
#reading from two different files and store each line into a variable
while read current_file_line <&3 && read previous_file_line <&4
do
current_filesystem_name=$(cat $current_file_line | awk {'print $1'})
current_filesystem_usage=$(cat $current_file_line | awk {'print $5'})
previous_filesystem_name=$(cat $previous_file_line | awk {'print $1'})
previous_filesystem_usage=$(cat $previous_file_line | awk {'print $5'})
if [ ${current_filesystem_usage%?} -ge ${previous_filesystem_usage%?} ]
then echo "There is problem !!! "
echo "Current disk usage:${current_filesystem_name}, ${current_filesystem_usage}"
echo "Previous month's disk usage:${previous_filesystem_name}, ${previous_filesystem_usage}"
#I also want to store all echo output to output.txt file
elif [ ${current_filesystem_usage%?} -lt ${previous_filesystem_usage%?} ]
then echo "There is no problem. Everything is alright."
echo "Current disk usage: ${current_filesystem_name}, ${current_filesystem_usage}"
echo "Previous month's disk usage: ${previous_filesystem_name}, ${previous_filesystem_usage}"
fi
done 3<current_filesystem_usage.txt 4<previous_months_filesystem_usage.txt
fi
差分を比較して計算したい場合は、 '-h'の代わりに' -m'を使用することができます。人間が読める形式ではなく、よく解析された形式ではなく、結果を整数値としてメガバイト単位で出力します。 –
私は用途のパーセンテージを比較したいと思います。メガバイトではない。 – Serhat