[解決済み] Bash。フォルダ構造を保持したまま再帰的に名前付きファイルをコピーする
2022-12-17 08:13:41
質問
期待していたのですが。
cp -R src/prog.js images/icon.jpg /tmp/package
を実行すると、出力先ディレクトリに対称的な構造が得られます。
/tmp
|
+-- package
|
+-- src
| |
| +-- prog.js
|
+-- images
|
+-- icon.jpg
のようになりますが、その代わりに両方のファイルが/tmp/packageにコピーされます。フラットなコピーです。 (これはOSXでの話です)。
ワイルドカード (例: src/*.js) で指定されたファイルを含むすべてのファイルを、宛先ディレクトリ内の適切な場所にコピーするために使用できる、簡単な bash 関数はありますか? 例えば、"各ファイルについて、以下のように実行します。
mkdir -p $(dirname "$file"); cp "$file" $(dirname "$file")
のようなものですが、おそらく単一のコマンドです。
これは関連するスレッドで、それが不可能であることを示唆しています。 なぜなら、ワイルドカードであろうとなかろうと、単にファイルのリストを提供し、それらすべてを宛先ディレクトリにコピーさせたいと思うからです。IRC MS-DOS の xcopy はこれを行いますが、cp には同等のものがないようです。
どのように解決するのですか?
-parentsオプションを使用してみましたか?OS X がサポートしているかどうかは知りませんが、Linux では使えます。
cp --parents src/prog.js images/icon.jpg /tmp/package
OS Xでうまくいかない場合は、以下を試してみてください。
rsync -R src/prog.js images/icon.jpg /tmp/package
aifが提案したように
関連
-
[解決済み] scpを使ってリモートからローカルにフォルダをコピーするにはどうしたらいいですか?
-
[解決済み] ワイルドカードマッチングに基づいて、現在のフォルダとサブフォルダ内のすべてのファイルを再帰的に検索するにはどうすればよいですか?
-
[解決済み] wget を使って任意のファイルを含むディレクトリを再帰的に取得する
-
[解決済み] Bashで複数のテキストファイルを1つのファイルに結合する
-
[解決済み] bashからバイナリでファイルを見るには?
-
[解決済み】Markdownファイル内のBash/Shellコードをハイライトする
-
[解決済み】Bashを使用して、存在しないサブディレクトリを再帰的に作成するにはどうすればよいですか?
-
[解決済み】フォルダを再帰的にコピーして、一部のフォルダを除いてコピーする
-
[解決済み】Bashでフォルダのサイズを確認する。
-
[解決済み] 現在の日付と時刻を句読点を使わずに表示する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] bashのループリストで空白をエスケープするには?
-
[解決済み] Bashでコマンド出力を隠す方法
-
[解決済み] Ansibleで新しいユーザーとパスワードを作成する
-
[解決済み] コマンドでファイルを使用し、出力を切り詰めることなく同じファイルにリダイレクトするにはどうすればよいですか?
-
[解決済み] bashでalt + numericを押すと(arg [numeric])と出ますが、これは何でしょう?
-
[解決済み] bashで端末の最終行を削除して置換するには?
-
[解決済み] bash で文字列をエスケープするコマンド
-
[解決済み] MacOSXでZSHをデフォルトシェルにする [終了しました]。
-
[解決済み] Bashのバックチックに相当するバッチ
-
[解決済み] Bashでファイルの内容を既存ファイルの末尾に追加する [重複]。