我正在终止端口 4444 中的进程,但这可以更改,我在变量 PORT 中有端口,但我找不到如何将其放入指令中
netstat -ntlp | awk '$4~/:*4444$/{gsub(/\/.*/,"",$NF);cmd="kill -9 "$NF;system(cmd)}'
我试过:
netstat -ntlp | awk '$4~/:*${PORT}$/{gsub(/\/.*/,"",$NF);cmd="kill -9 "$NF;system(cmd)}'
但是没用
最佳答案
Shell 变量未在单引号中扩展,但您不必必须求助于双引号及其过度转义。只是摆脱单引号字符串!
netstat -ntlp | awk '$4~/:*'${PORT}'$/{gsub(/\/.*/,"",$NF);cmd="kill -9 "$NF;system(cmd)}'
看看 ${PORT}
如何跟在上半部分的闭引号之后,以及下半部分的开始引号之前。
关于linux - 在字符串 bash 中连接变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9897263/