私のファイルには、次のスペースを含む出力があります。
daily/A3D05180000052121001 30698
daily/A3D05180000052200001 30698
daily/A3D05180000052203001 30698
空行を削除する必要があります。出力は次のようになります。
daily/A3D05180000052121001 30698
daily/A3D05180000052200001 30698
daily/A3D05180000052203001 30698
使ってみようsed
sed -i -e '/./,$!d' -e :a -e '/^\n*$/{$d;N;ba' -e '}' "$FILESIZE3"
しかし、うまくいきませんでした。誰でもこの問題を解決するのに役立ちますか?
ベストアンサー1
sed '/^[[:space:]]*$/d' file >file.modified
file
これにより、完全に空白または空白のような文字のみを含む行が削除されます。この場合、スペースに似た文字には、DOSテキストファイル(Unixツールで処理するとき)の各行の末尾にあるキャリッジリターン、タブ、およびスペースが含まれます。結果データが記録されますfile.modified
。
リダイレクトを削除して-i
代わりにオプションを使用すると、新しいファイルを作成する代わりに「内部」変更が行われますが、file
このオプションは移植できず、他のUnixシステムで異なる動作をすることができます(sed -i(所定の位置で編集)を使用して移植性を達成するには?)。