2013-03-09 8 views
8
で始まりません。

ファイルの内容を印刷しますが、#で始まる行はすべて無視します。私はgrepとawkでいくつかのものを試していましたが、ファイル全体を印刷し続けました。あるいは、#で始まる行を印刷しました。私はあなたに正しい方法でプッシュを与えることができ、#で始まらないファイルにアニラインを表示するgrep/awkコマンドを与えることができます。これは、試合の結果を否定Linux、ファイル内のすべての行を印刷します.

awk '!/^ *#/ { print; }' 

+4

'グレップの-v "^#を" file.txt' –

+0

http://unix.stackexchange.com/questions/60994/how-to-grep-lines-which-does-not-begin-with-or –

答えて

16

は、条件を否定するgrep-vオプションを使用します。

grep -v '^#' file 
+1

ありがとうございます! – Dasoren

5

あなたが!演算子を使用することができます。空白で始まり、#で始まる行も含めましたが、正規表現を好きなように調整することができます。

4
あなたはあなたがしている場合は -vオプション

grep -v '^#' filename 

を使用して#で始まるすべての行を除外するためにはgrepを使用することができ

ファンのsed

sed '/^#/d' filename 
+0

2つの良い例。しかし、sedの例では、 '。*'部分は必要ありません。 – cmevoli

+0

@ cmevoli - 行の先頭に#があるため、削除コマンドで十分です。 – Tuxdude

0

これも#の前に空白文字がある行を除外します:ここで

awk '$1!~/^#/' file 

または

grep -v '^[[:blank:]]*#' file 
0

はgrepのPCREの方法で、

grep -P '^(?!#)' file 
関連する問題