シェルの変数に割り当てられたコマンドについての回答を探していますが、成功していません。私のスクリプトは、ファイル4444444.xml
を持つ2015may
という名前のフォルダを探します。コマンドfind /path/zipfolders -name "*${array[$((i+1))]}*" -exec grep -l "${array[$i]}" {} +
は、これらのパラメータ["2015may"
,"44444444"
]:path/filename_2015may.zip
を使用して次の出力を表示します。問題は、このコマンドがにアサートするときに''
を返すことです。私は$command
にそれをassingningときに私は構文ミスを持っていると思う。私はこの問題を解決するためにあなたの助けを感謝します。ファイルパスを含む変数にコマンドを割り当てます
スクリプト
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
'zip'ファイル内で' zgrep'を検索する必要はありません。 – anubhava