use*_*654 4 grep string special-characters search file-search
我要检查没有字符以下序列$$$$$
中(即5美元符号)json
使用的文件grep
,因为它已被使用,而不是逗号分隔字段,我需要确保这并不会导致现有的类似序列的冲突。
但是,当我 grep 时$
,我得到了相似的行数。这似乎$
是行尾的特殊字符?
如何$$$$$
使用 grep 进行搜索?是$
特殊人物吗?
ilk*_*chu 18
这似乎
$
是行尾的特殊字符?
是的,正是。每行都有一个行尾。
您需要使用\$\$\$\$\$
as 模式,或使用grep -F '$$$$$'
,告诉grep
将模式用作固定字符串而不是正则表达式。
或者更短版本的正则表达式模式:\$\{5\}
在基本正则表达式或\${5}
扩展正则表达式 ( grep -E
) 中。
(在基本的正则表达式 (plain grep
) 中,您实际上只需要转义最后一个美元符号,因此$$$$\$
可以代替\$\$\$\$\$
。但在扩展 ( grep -E
) 和 Perl 正则表达式中,它们都需要转义,因此无论如何最好这样做。)