6
grep -A 26 "some text" somefile.txt |
   awk '/other text/ { gsub(/M/, " "); print $4 }' |
   sort -n -r | uniq | head -1

大きなテキストファイルから取得したリストで最大のものを返しますが、出力を変数として保存するにはどうすればよいですか?

4

3 に答える 3

9

コマンド置換を使用する:

my_var=$(grep -A 26 "some text" somefile.txt |
   awk '/other text/ { gsub(/M/, " "); print $4 }' |
   sort -n -r | uniq | head -n1)

また、移植性のために、常に。-n1の引数に使用することをお勧めしますhead。私はそれのいくつかの化身に出くわしましたが、使用はうまくいき-1ません。

于 2012-10-03T08:42:38.227 に答える
1

ネストされていない場合は、逆引用符も機能します。

variable=`grep -A 26 "some text" somefile.txt |   
awk '/other text/ { gsub(/M/, " "); print $4 }' |  
sort -nru | head -1`
于 2012-10-03T08:55:43.090 に答える
0

私は提案します

variable_name=$(grep -A 26 "some text" somefile.txt |
     awk '/other text/ { gsub(/M/, " "); print $4 }' |
     sort -nru | head -1)
于 2012-10-03T08:42:57.107 に答える