2012-10-21 77 views
1

可能重複:
Capturing multiple line output to a bash variable使用shell命令的返回值作爲shell腳本中的值?

比如我要運行ls命令,並採取返回列表,保存在shell腳本中的數組中的值。

喜歡的東西

運行

#ls 
fileA 
fileB 
fileC 

保持在保持一個陣列

variable A = ["fileA","fileB","fileC"]; 

我不能對代碼確切的符號,因爲我不知道怎麼變這個返回列表編寫shell腳本。在我學到這些之後,我會。

+0

我認爲關於數組的一點是與大多數可能重複的關鍵區分因素。有趣的問題,不要關閉它。 –

回答

0
variableA=$(ls) 
echo "$variableA" 
2
#!/bin/bash 
variableA=$(ls) 
echo $variableA 

應該是你的shell腳本假設你有bash

然後,所有你需要做的是chmod +x shell_script使其可執行。

如果使用ls > contents.file,則ls的結果將保存到名爲contents.file的文件中。 請記住,>重寫整個文件,而>>追加到最後一行。

+0

我可以得到一個值的數組 – erogol

+0

我不是最好的bash人。所以我所做的一般是填充文件,然後再讀取它們。至於數組,你會希望看到[this](http://www.linuxquestions.org/questions/linux-general-1/store-multi-line-output-into-an-array-in-a- linux-bash-script-706878 /#post3454704)讓我們知道它是怎麼回事! – drN