次の内容を含むテキストファイルがあります(実際のファイルには数千行が含まれています)。
abcd
xyas
sasss
jddks
asa
sasa
lkkkss
asasd
次の形式で出力したい。
abcd xyas sasss jddks
asa sasa lkkkss asasd
どうすればいいですか?
答え1
4行すべてを1つに連結するには、再帰マクロを使用します。
ggqaqqa4Jj@aq@a
説明する:
gg
ファイルの先頭に移動qaq
レジスタに以前に保存されたマクロをすべて削除します。a
qa
レジスタからマクロ書き込みを開始a
4J
4行を1行にマージj
1行下に移動@a
マクロ自体をレジスタからa
呼び出すようにしてください。q
録音を停止@a
レジスタからマクロを呼び出すa
と、完了するまでファイル処理が続行されます。
Perlの代替
perl -ni -e 'chomp;print $_, $.%4? " ":"\n"' your_file
引用する