我想用grep
grep的 「-C」
例如搜索-c
:
$>ls -al | grep '-c'
但grep
認爲這是一種選擇。
$>Usage: grep -hblcnsviw pattern file . . .
如何搜索-c
作爲字符串?
我想用grep
grep的 「-C」
例如搜索-c
:
$>ls -al | grep '-c'
但grep
認爲這是一種選擇。
$>Usage: grep -hblcnsviw pattern file . . .
如何搜索-c
作爲字符串?
你既可以:
逃生連字符。
grep '\-c'
使用-e
(--regexp=
)標誌
grep -e -c
grep --regexp=-c # Not in POSIX, but supported at least in Linux and OS X.
您使用-e
選項:
$ ls -a1 | grep -e -c
這當然是提到in the documentation,正是如此:
-e PATTERN,--regexp = PATTERN
使用PATTERN作爲模式。這可以用於指定多個搜索模式,或者用於保護以連字符( - )開頭的模式。 (-e由POSIX指定)。
告訴grep的地方你的選擇結束:
grep -- -c
罰款。它也可以工作。 – ismylhakkituran
這是推薦的方法,因爲這個'--'方法可用於大多數命令... – anishsane
要留在題目,回答你原來的問題是爲使用--
信號結束選項來處理,或使用-e
明確標記該選項。
但是,如果任何文件名包含新行,解析ls
的輸出將產生不正確的結果。使用find
代替:
find . -depth 1 -name "-c"
試試'grep'\ -c' – fedorqui