我想只打印具有特定字符串的行" fgfgfg"在专栏中 3 或第4列和第2列以fg开头 我使用了以下命令,但是它还打印的行没有fg作为第2列中的起始字符?
awk '{if (($3 == "fgfgfg" || $4 == "fgfgfg") && $2 ~ /fg/) print $0}' file_name
必须条件是第2列必须以' fg'开头。我还想添加一个条件,第2列以fg开头,后跟5位数? 请帮忙!!
答案 0 :(得分:1)
要确保第2列以fg
开头,您需要使用:
$2 ~ /^fg/
注意^
。它是行锚点的开头。如果省略它,正则表达式将匹配字符串中任何位置的fg
。
顺便说一句,你可以简化命令:
awk '(($3 == "fgfgfg") || ($4 == "fgfgfg")) && $2 ~ /^fg/' file
答案 1 :(得分:1)
print_r(parse_url('boutique/index.php?Products&Featured'));
Array
(
[path] => boutique/index.php
[query] => Products&Featured
)