我试图让所有进程的名称在“屏幕-list”linux的bash脚本切串字符的第一次出现后
不幸的是,我已经不能在循环,因为
for PLINE in `screen -list | grep 'tached)'`; do
echo "$PLINE"
done
输出
3698.processname
(16/08/12
12:59:37)
(Detached)
但我预计产量为
3698.processname (16/08/12 12:59:37) (Detached)
喜欢的时候直接输入screen -list | grep 'tached)'
进控制台。
我想要做的,如果这个循环已经工作,使用cut -d '.' -f 2
,然后在找到第一个空白后切断结果字符串。 (我还不太清楚该怎么做,我所知道的只是%' '
)
所以,我认为这很明显,我没有太多的线索bash脚本,因此我打开更多优雅的建议做我想做的事情。
(编辑) 解决方案:
for PLINE in `screen -list | grep 'tached)' | awk -F '[ \t\n\v\r.]' '{print $3}'`; do
echo $PLINE
done
您的解决方案仍然使用不必要的管道。请记住,你可以用grep做任何事情,你也可以用awk做。 – ghoti 2012-08-17 02:23:09