繁体   English   中英

文件中的grep变量字符串

[英]grep variable string in file

我必须在文件中找到以下字符串:

200 https://www.example.example

值200是随机的,我必须找到每个HTTP返回码(例如200、301、404等...等)

我怎样才能只对带有返回代码变量的字符串进行grep(我不想在grep命令中指定每个返回代码)?

cat file.txt | grep "*** http*" 

但这是行不通的。

因此,您要匹配以三位数字开头,后跟“ http”的任何行吗?

grep -E '^[0-9]{3} http' file.txt

如fedorqui(感谢)所建议的那样更准确:

grep -E '^[1-5][0-9]{2} http' file.txt

这将匹配100-599范围内的数字,该范围更接近HTTP状态代码的范围。

首先,不需要使用grep cat 它本身可以带有一个文件参数。

你可以这样做:

grep '^[1-5][0-9]\{2\}[[:blank:]]\+http' file.txt

这将使您符合条件的每一行。

如果只需要返回代码,则可以运行另一个grep或使用其他命令,例如,使用cut

grep '^[1-5][0-9]\{2\}[[:blank:]]\+http' file.txt | cut -d ' ' -f1

和grep,

grep '^[1-5][0-9]\{2\}[[:blank:]]\+http' file.txt | grep -o '^[0-9]\+'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM