次のような内容のファイルがある場合:
FirstSection
Unique first line in first section
Unique second line in first section
SecondSection
Unique first line in second section
Unique second line in second section
...
NthSection
Unique first line in Nth section
Unique second line in Nth section
unixコマンド(sort、awkなど)を使用して、各3行のグループでインデントされていない最初の行に基づいてファイルをアルファベット順に並べ替えると同時に、既存のグループの下にインデントされた行を保持できますか?
ベストアンサー1
Perlでは、次のことができます。
- ツバメファイル(
perl -0n
) - インデントされていない行に入力を分割する
split(/^(?=\S)/m)
- 並べ替えと印刷
perl -0ne 'print sort split(/^(?=\S)/m) ' ex