如何从头开始grep这个词

时间:2013-09-12 04:11:04

标签: linux bash unix

我想grep以“Error /”

开头的文件

我已经尝试了下面的grep,但它没有用。可能是版本问题?还有另一种方法吗?

grep "^Error/" Error.txt > Error1.txt

Error.txt

Sample ^/Error/XXXXXXXXXXXXXX /Tab Test
Sample1 ^/Error/$ /123
Sample2  ^/mobileweb$ Error/

我的操作系统版本为oslevel 6.1.0.0

请指教谢谢!

2 个答案:

答案 0 :(得分:1)

如果你想要文字字符串^/Error(这与你的实际问题相矛盾,但似乎适合你的例子),你必须逃避或以其他方式引用插入符号,因为它具有特殊含义(行首) )在正则表达式。

因为许多正则表达式特殊字符对shell也有特殊含义,所以最好用单引号正确引用正则表达式。

grep '\^/Error' file
# or equivalently
grep '[^]/Error' file
# or even
grep "\\^/Error" file

(最后一个例子表明较弱的引号需要反斜杠 - 转义反斜杠转义。)

答案 1 :(得分:0)

\<,单词的开头,\>单词的结尾

当然,我并不理解你的问题,但这回答了我认为你在问的问题。