如何使用grep获取特殊字符

时间:2012-12-18 07:39:52

标签: unix

我想grep \“如文件(abc)中的文字,如:

$egrep -n  "^\"$" abc
"CO_FA_SC_600212","2","\"HSE 48\" 48 CHIVALRY AVE"

但它没有出现我怎么能用egrep或grep来获得这条线。

2 个答案:

答案 0 :(得分:1)

以下是两种选择:

  1. grep -n "\\\\\"" filename
  2. grep -n '\\"' filename
  3. 对于第一个,连续两个\\充当单个\,而"\转义,因此\\"被传递给{ {1}}。
  4. 对于第二个,grep按字面意思,因此\传递给\\"
  5. grep3可以通过4echo "\\\\\""
  6. 进行验证

答案 1 :(得分:0)

grep -F 'special char' filename将搜索具有特殊字符的行。

grep -Fn 'special char' filename也获取了行号。

man grep说, -F, --fixed-strings:将PATTERN解释为固定字符串列表,以换行符分隔,其中任何一个都要匹配