我有 input.txt
abcd
abcg
要选择以“a”开头并以“g”结尾的行,我写:
cat input.txt | awk '/^a/' | awk '/g$/{print $0}'
如何组合正则表达式^a
并g$
只能使用一个实例awk
?
我有 input.txt
abcd
abcg
要选择以“a”开头并以“g”结尾的行,我写:
cat input.txt | awk '/^a/' | awk '/g$/{print $0}'
如何组合正则表达式^a
并g$
只能使用一个实例awk
?
只需使用一个匹配开始和结束的正则表达式:
或者,如果您真的想使用两个,您可以将它们与
&&
:不需要awk,只需grep:
为了使用awk使答案尽可能通用,这是执行所需操作的另一种方法,其中模式字符串作为变量从命令行传递。
此示例中嵌入了演示测试数据。
使用脚本
并执行命令
输出是
忽略其他行。
特别注意: "^" abd "$" 必须作为 awk 变量的一部分按字面意思传递。