2011-11-21 80 views

回答

0

你的問題是不是所有的清楚,但

var=`cut -d/ -f6- < $file` 

你是什麼之後?

1

幾個指針:

在shell腳本中空格真的很重要。您的代碼var = $file是錯誤的,因爲不存在可執行文件var,該文件知道如何處理參數=$file。使用

var="$file" 

取而代之。

要抓取$file | cut -d/ -f6-管道的輸出,你需要的語法如下:

var="$(echo $file | cut -d/ -f6-)" 

在最近的版本bash您可以使用「這裏串」來代替,避免echo和管道的費用。

var="$(cut -d/ -f6- <<<"$file")" 

我注意到,你也試圖處理find命令的結果,也有不正確的語法。這樣做的正確的語法是

while IFS= read -d $'\0' -r file ; do 
    var="$(cut -d/ -f6- <<<"$file")" 
    echo "$var" 
done < <(find "$1") 

我必須再次問你,什麼「字段6」是幹什麼的,因爲你已經問過類似的問題before

相關問題