a="grep ssh | grep -v grep"
ps -ef | $a | awk '{print $2}'
Run Code Online (Sandbox Code Playgroud)
我怎样才能完成上述工作?我有一个部分,我不仅要传递grep术语,但可能传递多个grep术语,这意味着我需要将"term1 | grep term2"作为变量传递.
编辑:
另一个.下面的回答对我来说非常合适.谢谢你,先生!
改为创建一个函数:
a() {
grep ssh | grep -v grep
}
ps -ef | a | awk '{print $2}'
Run Code Online (Sandbox Code Playgroud)
另一种解决方案是使用eval,但除非经过适当的消毒,否则不安全,不建议使用.
a="grep ssh | grep -v grep"
ps -ef | eval "$a" | awk '{print $2}'
Run Code Online (Sandbox Code Playgroud)