私は望んでいました:
cp -R src/prog.js images/icon.jpg /tmp/package
宛先ディレクトリに対称構造を生成します:
/tmp
|
+-- package
|
+-- src
| |
| +-- prog.js
|
+-- images
|
+-- icon.jpg
代わりに、両方のファイルが/ tmp / packageにコピーされます。フラットコピー。(これはOSX上にあります)。
ワイルドカードで指定されたファイル(src / *。jsなど)を含むすべてのファイルを宛先ディレクトリ内の正当な場所にコピーするために使用できる単純なbash関数はありますか?"for each file、run mkdir -p $(dirname "$file"); cp "$file" $(dirname "$file")
"と少し似ていますが、おそらく単一のコマンドです。
これは関連するスレッドであり、不可能であることを示唆しています。作成者の解決策は、ワイルドカードであるかどうかに関係なくファイルのリストを提供し、それらすべてを宛先ディレクトリにコピーしてもらいたいので、私にはそれほど役に立ちません。IIRC MS-DOS xcopyはこれを行いますが、cpに相当するものはないようです。