2番目と4番目の列を別のファイルに書き込む方法

2番目と4番目の列を別のファイルに書き込む方法

例:

ファイル1

Speed: 50.00 Temperature: 120.00
Speed: 51.00 Temperature: 121.00
Speed: 52.00 Temperature: 122.00

ファイル2

50.00 120.00
51.00 121.00
52.00 122.00

file1をfile2に書きたいです。

答え1

awk '{print $2, $4}' file1 > file2

答え2

フィールドがスペースで区切られているとします。

cut -d" " -f2,4 file1 > file2

答え3

このawkソリューションは、おそらく最も短く、最も簡潔で、大容量ファイルで作業する場合は高速ですが、シェルでもこれを実行できます。これは一つの方法です。

バッシュを使用してください。

while read -ra line; do
  printf '%s %s\n' "${line[1]}" "${line[3]}"
done < file1 > file2

Bashには-a1行あたりの配列を生成する組み込みの読み取りオプションがあり、whileループはファイルの行を処理します。このソリューションの唯一の利点は、シェルで外部コマンドを使用しないことです。より多くのポータブルソリューションには大量のPEが必要です。

関連情報