2012-12-27 79 views
0

注FROM OP:糟糕。我的錯。我碰巧讓grep尋找不存在的東西。當然,我沒有輸出。是的,這是一個another questionBASH:發送複雜的命令的輸出到一個數組

<> <> <> <> <> <> <> <> <> <> <> <> <> <> <> <> <> <> <> <>

有網絡上的很多答案(大部分)都是這個問題。 「大部分」部分是我的問題。

如何捕捉一個命令行的輸出到一個bash數組當命令行中包含管字符「|」?

array=($(ps -ef | grep myproc | grep -v grep)) 

不起作用。也不對:

array=(`ps -ef | grep myproc | grep -v grep`) 

(這些都是反引號的情況下,你的字體軋液它們)。

而且,可以在給定的答案與陣列+ =語法使用?

+1

這個問題的可能的複製,整個陣列:http://stackoverflow.com/questions/1753366/重定向輸出到一個-慶典陣列 – seliopou

+0

你是什麼意思_it不WORK_?對我來說,它的工作原理,我的意思是,我沒有語法錯誤。 –

+0

那麼,它幫助,如果你選擇管到grep爲實際存在的進程名。 Mea culpa。感謝所有人的快速解答。 –

回答

0
array=($(ps -ef | grep myproc | grep -v grep)) 

工作得很好。您可以檢查它時,你顯示你的數組中元素的個數

echo ${#array[*]} 

echo ${array[*]} 
+0

認錯:我碰巧尋找那些沒有正在運行的進程名。當然,我沒有從PS輸出。 –

相關問題