2016-10-29 20 views
0

2行の.txtファイルと1行しか含まない行があるので、1行しか含まないものを削除したい。awk/gawk - 2行目が存在しない場合に行を削除する

ラインの例では、救助に

Iamnotyours: 
+0

質問から - 「1行しか含まないものを削除してください」 例から - "1つ以上の列を持つ行を選択しています" –

+1

"行"と言うときは "列"を意味しますか?どの列が空であるかは重要ですか?あなたの質問を編集して、各列の存在/不在のすべての組み合わせを示すより包括的な入出力を含めます。 –

答えて

1

awkを削除するには、

Iamnotyours:[email protected] 

ラインを保つために

ラインです!二つのフィールド

$ awk -F: 'NF>1' file 

印刷ライン複数のフィールドを有する

$ awk -F: 'NF==2' file  

印刷行のみ。あなたの場合、区切り記号があると、フィールド数は2になります。

grep -v ':$' file 

かあなたには、いくつかの理由でのawkを主張する場合:

awk '!/:$/' file 

あなたは2番目のフィールドは、あなたが必要とするすべてはあなたの投稿をサンプル入力が与えられ

$ awk -F: '$2!=""' file 
2

空であるかどうかを確認する必要がありますそれがすべてではない場合は、要件を明確にするために質問を編集してください。

+1

バイトをもっと短くするために(そして '!'を取り除くために):awk '/:./' file'。 –

+1

idk:もし ':'が常にそこにあれば。質問に多くの情報はありません! –

関連する問題