Sha*_*ter 8 grep text-processing quoting
我需要查找文件中是否有任何行以**
.
我不知道该怎么做,因为它*
被 shell 解释为通配符。
grep -i "^2" test.out
Run Code Online (Sandbox Code Playgroud)
如果该行以 2 开头但有效
grep -i "^**" test.out
Run Code Online (Sandbox Code Playgroud)
显然不起作用。
(我还需要知道该行是否以 a 结尾,)
但还没有尝试过)。
Ste*_*ris 19
使用\
字符转义 * 使其成为普通字符。
grep '^\*\*' test.out
Run Code Online (Sandbox Code Playgroud)
还要注意单引号'
而不是双引号"
以防止外壳扩展事物
由于您想检查以 开头**
和结尾的行)
,您可以grep
像这样组合两个操作,
grep '^*\*' test.out | grep ')$'
Run Code Online (Sandbox Code Playgroud)
或者使用这样的单个grep
命令,
grep -E '^\*\*.*\)$' test.out
Run Code Online (Sandbox Code Playgroud)
解释
^\*\*
: 匹配行以 **
.*
: 匹配之后的所有内容 **
\)$
: 匹配行也有)
在行尾。 归档时间: |
|
查看次数: |
23294 次 |
最近记录: |