私には以下の内容のファイルがあります。ペーストコマンド以外の選択肢はありファイルの内容を並べて表示するbash
hello 1223
man 2332
xyz abc
:私は、所望の側
hello
1223
man
2332
xyz
abc
出力することにより、各ライン側を印刷する必要がありますか?
私には以下の内容のファイルがあります。ペーストコマンド以外の選択肢はありファイルの内容を並べて表示するbash
hello 1223
man 2332
xyz abc
:私は、所望の側
hello
1223
man
2332
xyz
abc
出力することにより、各ライン側を印刷する必要がありますか?
を使用でき、このawk
:
awk '{ORS = (NR%2 ? FS : RS)} 1' file
hello 1223
man 2332
xyz abc
この設定ORS
それは入力レコードセパレータに設定される偶数ラインに対して奇数ライン用の入力フィールドセパレータ(FS
)に等しい(出力レコードセパレータ) (RS
)。表形式のデータを取得するために
はcolumn -t
を使用します。
awk '{ORS = (NR%2 ? FS : RS)} 1' file | column -t
hello 1223
man 2332
xyz abc
のawk/gawkのソリューション:
$ gawk 'BEGIN{ OFS="\t"} { COL1=$1; getline; COL2=$1; print(COL1,COL2)}' file
hello 1223
man 2332
xyz abc
バッシュ溶液(なしペーストコマンド):
$ echo $(cat file) | while read col1 col2; do printf "%s\t%s\n" $col1 $col2; done
hello 1223
man 2332
xyz abc
に特定の理由があります'ペースト'を避ける? –