2012-12-27 41 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输出。 –

相关问题