書き込み作成・コピー・移動

フォルダごとコピーしたい

このページでできること

フォルダ内のファイルやサブフォルダもコピーします。

コマンド例

cp -Ri ./project ./project-copy

ツリー図で見る操作対象

理解のための模式図です。実際の端末画面ではありません。末尾の / はフォルダ、[現在地] はコマンドを実行する場所です。枝線は親子関係を表します。

実行前
work/ [現在地]
└── project/
    ├── images/
    │   └── photo.png
    └── memo.txt
実行後
work/ [現在地]
├── project/
│   ├── images/
│   │   └── photo.png
│   └── memo.txt
└── project-copy/
    ├── images/
    │   └── photo.png
    └── memo.txt

コピー先 project-copy/ がまだ存在しない場合です。project/ とその中身は残り、同じ構造が project-copy/ に作られます。-R で下の階層までコピーします。

コピー先フォルダが先に存在する場合

コピー先がある状態の実行前
work/ [現在地]
├── project/
│   ├── images/
│   │   └── photo.png
│   └── memo.txt
└── project-copy/
コピー先がある状態の実行後
work/ [現在地]
├── project/
│   ├── images/
│   │   └── photo.png
│   └── memo.txt
└── project-copy/
    └── project/
        ├── images/
        │   └── photo.png
        └── memo.txt

同じコマンドでも project-copy/ が先に存在すると、その中に project/ が入ります。繰り返す前にコピー先の状態を確認しましょう。既存ファイルを上書きするときは -i による確認があります。

使い方を順番に確認する練習を始めるときは、この手順に沿って進めます

使い方

  1. Linuxのターミナルを開き、pwd と ls で現在地・対象を確認します。
  2. 例に出てくるファイル名・フォルダ名を、自分の環境に合わせます。読み取り・検索・コピー・移動の対象は、実際に存在するものを指定してください。
  3. 下の注意点を読んだうえでコマンドを入力し、Enterで実行します。

実行するとどうなる?

フォルダ内のファイルやサブフォルダもコピーします。

注意点

project-copy が既存フォルダなら、その中に project が入ります。上書き時は確認が出ます。

権限に関する注意:アクセス拒否の原因を調べずに、管理者権限や sudo で実行しないでください。

うまくいかないときに確認するエラーや想定と違う結果が出たときの確認ポイント

うまくいかないとき

「No such file or directory」が出たら、現在地・名前・大文字と小文字を確認します。「Permission denied」が出たら、自分が操作してよい場所か確認してください。原因を調べずに sudo を付けないでください。

対象環境:GNU/Linux・Bash。環境やバージョンによって表示が異なる場合があります。

公式マニュアルで詳しく確認する(英語)

同じカテゴリのコマンド

コマンド一覧に戻る