2013-01-11 61 views
1

我寫了一個小程序來獲取目錄中所有文件的列表,並將它們連接到一個字符串變量。下面的代碼Bash腳本在讀取文件時無法訪問錯誤

#!/bin/bash 
dir ="/home/user/myfolder/abc" 
res=" " 

for f in $(ls $dir ); do 
    res="$res $f" 
done 

echo $res 

但是我收到以下錯誤

dir: cannot access =/home/user/myfolder/abc: No such file or directory 

我已經將所有所需的權限,什麼解決辦法嗎?

+1

哦!那是因爲我沒有找到可以解決我的問題的答案。我會在11分鐘內接受你的答案..謝謝你。 –

回答

4

取出分配之間的空間:

#!/bin/bash 
dir ="/home/user/myfolder/abc" 

這樣做:

#!/bin/bash 
dir="/home/user/myfolder/abc" 

每一種語言都有它自己的語法,和bash腳本需要任務期間left_value=right_value之間沒有空格;如你所見,這只是一個語法問題。

+0

This Works!但它的奇怪!什麼與作業和空間? –

+0

@ravijimagna請參閱我的編輯 – Rubens

3

可能你需要:

dir=/home/user/myfolder/abc

而不是

dir ="/home/user/myfolder/abc"

額外的空間後目錄使得它的指令 「dir」,這通常是化名爲LS