sed を使用してファイルの最初の行が空白の場合のみ削除する

sed を使用してファイルの最初の行が空白の場合のみ削除する

これに対する解決策は次のとおりですawk:

awk '{if (NR==1 && NF==0) next};1' somefile

しかし、 で動作するものを見つけることができませんでしたsed。例:

sed -i.bak '/^$/{1,1d;}' somefile

結局、見つかった最初の空白行を削除しました (私はsed専門家ではないので、試してみただけです)。sedこの場合の利点は、一時ファイルなしでこれを実行できることです。つまり、その場で実行できます。

答え1

これを試してみてください:

sed '1{/^$/d}' file

答え2

代替案:

sed '0,/^$/d' ファイル

大胆な推測ですが、最初の行(文字を含む行)の前の空白行をすべて削除したい場合があります。その場合は、以下を試してください。

sed '1,/^$/d' ファイル

関連情報