我试图了解为什么这种单线获取最密集过程的工作目录不起作用
top -n 1 | grep -A 1 PID | tail -1 | cut -d' ' -f1 | xargs pwdx
pwdx: invalid process id: 13620
什么时候做
echo 13620 | xargs pwdx
13620: /correct/working/directory
在第一个示例中,输出PID中没有任何尾随/前导空格被传递给xargs,但仍不能将其识别为有效PID。有人有什么建议吗?
Top的输出包含特殊字符:
top -n 1 | grep -A1 PID | tail -1 | cut -d' ' -f1 | xargs echo | cat -v
^[(B^[[m^[(B^[[m41039
其中41039是PID
使用grep或类似方法过滤掉错误字符,id也使用awk获取第一个字段
top -n 1 | grep -A1 PID | tail -1 | awk '{print $1}' | grep -o -E '[0-9]+' | xargs pwdx
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句