我一直在尋找一個有關命令分配給shell中的變量但沒有成功的答案。我的腳本查找名爲2015may
的文件夾,其文件爲4444444.xml
。命令find /path/zipfolders -name "*${array[$((i+1))]}*" -exec grep -l "${array[$i]}" {} +
使用這些參數["2015may"
,"44444444"
]顯示以下輸出:path/filename_2015may.zip
。問題是這個命令在將其分配給$command
時返回''
。我認爲在將其分配到$command
時,我的語法錯誤。我會感謝您解決此問題的幫助。將命令分配給包含文件路徑的變量
腳本
command=$(find /path/zipfolders -name "*${array[$((i+1))]}*" -exec grep -l "${array[$i]}" {} +)
echo "$command"
實際輸出
find /path/zipfolders -name "*${array[$((i+1))]}*" -exec grep -l "${array[$i]}" {} +
++ find /path/zipfolders -name '*2015may*' -exec grep -l 44444444 '{}' +
+ command=
+ echo ''
所需的輸出
path/filename_2015may.zip
您是否需要'zgrep'來搜索'zip'文件。 – anubhava