ファイルの先頭と末尾から空白行を削除したいが、途中で空でない行間の空白行を削除したくない。私は解決策になるとsed
思います。awk
源泉:
1:
2:
3:line1
4:
5:line2
6:
7:
8:
出力:
1:line1
2:
3:line2
ベストアンサー1
この試み、
ファイルの先頭から空白行を削除するには:
sed -i '/./,$!d' filename
ファイルの末尾から空白行を削除するには:
sed -i -e :a -e '/^\n*$/{$d;N;ba' -e '}' file
ファイルの先頭と末尾から空白行を削除するには:
sed -i -e '/./,$!d' -e :a -e '/^\n*$/{$d;N;ba' -e '}' file
男性からsed、
-e script, --expression=script -> 実行するコマンドにスクリプトを追加します。
b label -> labelに分岐します。ラベルが省略された場合、スクリプトの最後に分岐します。
a - >行の後にテキストを追加します(代替構文)。
$-> は最後の行と一致します。
n N - >パターンスペースに改行文字を追加した後、パターンスペースに次の入力行を追加します。これ以上入力がない場合、sed は他のコマンドを処理せずに終了します。