2017-02-09 56 views
1

我想打印找到匹配的过程中,当同时匹配模式输入的PID:如何使用搜索模式变量awk脚本

ps aux | awk -v in="$1" '/in/{print $1}' 

似乎前者AWK句话是不对的。在谷歌检查结果许多像this后,我改变我的脚本在下面,但仍然无法工作:

ps aux | awk -v in="$1" '/$0 ~ in/{print $1}' 

ps aux | awk -v in="$1" '($0 ~ in) {print $1}' 
+1

我想'p纤ep “$ 1”'将是更好的选择? – Sundeep

回答

2

你在你所有的努力相当接近。问题是inawk中的保留关键字。

您可以使用:

ps aux | awk -v var="$1" '$0 ~ var {print $1}' 

否则非正则表达式的方法:

ps aux | awk -v var="$1" 'index($0, var) {print $1}'