次のファイルを含むフォルダAを考えてみましょう。
foo
bar
baz
フォルダ B には以下が含まれます。
foo
baz
foobar
qux
フォルダAから新しいフォルダCにコピーするfoo
方法は?内容ではなく名前だけを比較していることに注意してください。baz
ベストアンサー1
ファイルに for ループを使用します。パラメータ拡張を使用して部分パスを抽出できます。
#! /bin/bash
for file in folderA/* ; do
basename=${file##*/}
if [[ -f folderB/$basename ]] ; then
cp "$file" folderC/"$basename"
fi
done
また、フォルダBのファイルを繰り返すこともできます。これは、フォルダBにフォルダAよりもはるかに少ないファイルが含まれている場合にお勧めします。