我試圖讓所有進程的名稱在「屏幕-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