grepしてsmb.conf
、コメントされていない行のみを表示します。
grepしてsmb.conf
、コメントされていない行のみを表示します。
回答:
grep "^[^#;]" smb.conf
最初^
の行は行の先頭を参照するため、最初の文字の後にコメントが始まる行は除外されません。 または[^#;]
ではない文字を意味します。#
;
つまり、#
and 以外の文字で始まる行を報告し;
ます。それはで始まらない行の報告と同じではありません#
し、;
(あなたが使用したいいるgrep -v '^[#;]'
ことも除外することで)空行を、私はあなたが空のラインを気疑うようすなわち、この場合には、おそらく望ましいです。
先頭の空白文字を無視する場合は、次のように変更できます。
grep '^[[:blank:]]*[^[:blank:]#;]' smb.conf
または
grep -vxE '[[:blank:]]*([#;].*)?' smb.conf
または
awk '$1 ~ /^[^;#]/' smb.conf
cat /etc/samba/smb.conf | grep ^[^#\;]
です。とにかくありがとう
cat ...|
構文の使用は避けてください!.2空行と、スペースのみを含む行をホイップする場合、コメントUでこれを使用できます。grep -v "^ *\(#.*\|\)$" < smb.conf
cat file | grep "blah"
implieは、を介して2つのバイナリを実行しているFIFOながら、grep "blah" <file
まったく同じやると結合しfile
naturalyのgrep年代にSTDIN
。[bash]役に立たない猫は、あらゆる検索エンジンを介した検索のフル機能の主題です!-> blog.sanctum.geek.nz/useless-use-of-cat ...サンプル用
これらの例は、人々に役立つかもしれません。
[user@host tmp]$ cat whitespacetest
# Line 1 is a comment with hash symbol as first char
# Line 2 is a comment with hash symbol as second char
# Line 3 is a comment with hash symbol as third char
# Line 4 is a comment with tab first, then hash
; Line 5 is a comment with tab first, then semicolon. Comment char is ;
; Line 6 is a comment with semicolon symbol as first char
[user@host tmp]$
最初のgrepの例は、任意の量の空白文字で始まり、その後にハッシュ記号が続く行を除外します。
[user@host tmp]$ grep -v '^[[:space:]]*#' whitespacetest
; Line 5 is a comment with tab first, then semicolon. Comment char is ;
; Line 6 is a comment with semicolon symbol as first char
[user@host tmp]$
2番目は、任意の量の空白で始まり、その後にハッシュ記号またはセミコロンが続く行を除外します。
[user@host tmp]$ grep -v '^[[:space:]]*[#;]' whitespacetest
[user@host tmp]$
ここで私はより良いものを得ました(GNU grep
または互換性があると仮定します):
grep -v '^[#;/%<]\|^\s*$' anyfile.conf
で始まる行#;/%<
は角括弧で囲まれ、パイプの後の2番目のフィルターは\s*$
空白行です。
<
または/
コメントに使用されますか?<
コメント以外のすべてのconfファイル形式を知っています。!
Xリソースファイルのように使用されることがあります。
grep -v '^$\|^\s*#' temp
これはずっと良いです、私はそれを手に入れました https://stackoverflow.com/questions/17392869/how-to-print-a-file-exexcept-comments-and-blank-lines-using-grep-sed
GNU grep
または互換性があることを前提としています。
;
は、削除する必要があるコメントとして始まる行を考慮します。
egrep -v "^#|^$" anyfile.txt
このコマンドは、コメントと空白行を除くファイル内のすべての情報をgrepします。
;
testparm
これもデフォルト値を表示するため、より適切に行います。