これが私がやろうとしていることです:
file1val=cat data1 | awk '{print $5}'
file1nam=cat data1 | awk '{print $3}'
file2val=cat data2 | awk '{print $5}'
file3nam=cat data2 | awk '{print $3}'
if file1nam = file2name
then do some code stuff for the file1val/file2val
それ以外の場合は文字列をスキップし、すべての文字列がチェックされるまで続行し、結果を単一のファイルにエコーします
例:
data1 には次の文字列があります
-rw-r--r-- 1 elmo red 13140667 Oct 13 22:20 65464654.tgz
-rw-r--r-- 1 oscar red 130667 Oct 13 22:20 6533464654.tgz
-rw-r--r-- 1 bert red 1313340667 Oct 13 22:20 654654.tgz
data2 には次の文字列があります
-rw-r--r-- 1 elmo red 130667 Oct 11 22:20 6564654.tgz
-rw-r--r-- 1 bert red 13667 Oct 11 22:20 65464654.tgz
-rw-r--r-- 1 snuffy red 13123123140667 Oct 11 22:20 65464654.tgz
elmo (filenam) が dat1 と data 2 に存在する場合、これを実行してそのサイズを比較します。
perc=bc <<< "scale=2; ($file2val - $file1val)/$file1val * 100"
結果をファイルに出力します。
elmo $perc
bert $perc
これは、data1 および data2 ファイルに存在する約 20 行のそれぞれをループする必要があります。