Solarisのリストを含むファイルがあります。
List A
hi
hello
hw r u
List B
Hi
Yes
List C
Hello
リストを次のように置き換える必要があります。
List A List B List C
hi Hi Hello
hello Yes
hw r u
Solarisでこれを行うにはどうすればよいですか?
ベストアンサー1
awk
各チャンクを別々のファイルに分割して一緒に入れることができますpaste
(以下では、各リストの間に常に空白行があるとします)。
awk '/^$/ {N++;next}{print >"file"N}' infile.txt
paste file*
paste
コマンドをに移動することもできますawk
。
awk '/^$/ {N++;next}{print >"file"N} END{system("paste file*")}' inile.txt
出力は次のとおりです
List A List B List C
hi Hi Hello
hello Yes
hw r u
行の長さを変更すると、次のような美しいインデントが生成されます。
入力ファイル:
list A
hi
hello
hw r u
List B
Hi this is list B
Yes
List C
Hello, this is list C
あなたはできますpaste file* |column -s $'\t' -tn
結果が得られます:
list A List B List C
hi Hi this is list B Hello, this is list C
hello Yes
hw r u