各ファイルには同様の内容があります。
number 1:
asdfa11sdfsadf
number 2:
asdfa12sdfsadf
number 1:
asdfa1sdfsadf
number 3:
asdfa33sdfsadf
返品
3 or number 3: are equally good.
試験を終えた:
max="$( awk -F":" 'BEGIN{max=0}{if(($2)>max) max=$2}END {print max}' file)"
printf "%d\n" "$max"
33は返しますが、3は返しません。
また試しました:
grep -o 'number\s[0-9]*' file1.txt file2.txt | sort -nr | head -1
ファイル入力階層に基づいて最も高い数字を返します(最も高い数字がfile1の数字8の場合でも、file2内の最も高い数字のみを検索します。)
答え1
最後のコマンドを使用できますが、-ho
代わりにgrepを使用してください-o
。
grep -ho 'number\s[0-9]*' file1.txt file2.txt | sort -nr | head -1
-h
問題を引き起こした結果からファイル名が削除されます。