以下はこのコードです。スクリプトを使用してディレクトリから自分のディレクトリにファイルをコピーする必要があります。

以下はこのコードです。スクリプトを使用してディレクトリから自分のディレクトリにファイルをコピーする必要があります。

だからいくつかの名前を含む配列があります。別のフォルダで特定のパターンを持つすべてのファイルを見つけて、そのファイルを現在のフォルダにコピーする必要があります。

NAME=(JOHN)
for i in ${NAMES[@]}
do
   cp ~/folder/$i .
done

答え1

あなたが使用できるfind

find /yourdir -name '*JOHN*' -exec cp {} ~/folder/  \;

SOに関する質問です。

答え2

ファイル名に指定されたパターンがある場合は、以下を試してください。

NAME=(PATTERN1 PATTERN2)
for i in ${NAMES[@]}
do
   find PATH -name "$i" -exec cp -av {} PATH_TO_COPY \;
done 

ファイル名にPATTERN以外の文字列がある場合:

NAME=(PATTERN1 PATTERN2)
for i in ${NAMES[@]}
    do
       find PATH -name "*${i}*" -exec cp -av {} PATH_TO_COPY \;
    done 

必要に応じて変更してください。

関連情報