Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法使grep对大写字母的搜索可靠地工作_Grep - Fatal编程技术网

无法使grep对大写字母的搜索可靠地工作

无法使grep对大写字母的搜索可靠地工作,grep,Grep,我有几个大的文本文件,我想对其中的数千条记录进行grep,每个记录的一行上都有一个字符串,例如“1 name userabc.db”或“1 name xy040101.db”或“1 name abcdfr.db”或“1 name efgh.db” 字符串“userabc.db”等可以在该名称中包含大写字母,如userabc.db、userabc.db或userabc.db,在.db文件名的任何位置 因此,我需要能够在每一条记录中搜索并识别这一行,这一行的任何地方都有大写字母,如果有的话 当我使用

我有几个大的文本文件,我想对其中的数千条记录进行grep,每个记录的一行上都有一个字符串,例如“1 name userabc.db”或“1 name xy040101.db”或“1 name abcdfr.db”或“1 name efgh.db”

字符串“userabc.db”等可以在该名称中包含大写字母,如userabc.db、userabc.db或userabc.db,在.db文件名的任何位置

因此,我需要能够在每一条记录中搜索并识别这一行,这一行的任何地方都有大写字母,如果有的话

当我使用“grep'[1 name][A-Z]./store.txt”没有双引号时,我发现:

“1名USERxxx.db”和 “1名称Xy040101.DB”和 “1名Abcdfr.db”和 “1 name EFGH.DB”,但当大写字母或多个字母开始于所讨论行中.DB文件名的第二个或后续字母位置时,则不是

底线是,当这些字母位于.db文件名的任何位置时,我需要能够找到所有包含大写字母的行,而不仅仅是在开头或所有字母都是大写时

这能做到吗?也许用sed或awk更好

谢谢, 鲍勃·佩雷斯(bperez@novell.com)您所需要的只是:

grep "1 name .*[A-Z].*" ./store.txt

*
将多次匹配任何字符。

这肯定比我之前的效果更好,但它也会查找小写字符串,我只希望它在.db文件名中有1个或多个大写字符时显示此字符串。。。