|
|
抜粋Linuxコマンドリファレンス
|
ディレクトリとファイルの操作ディレクトリとファイルの作成カレントディレクトリの変更ディレクトリとファイルの表示ディレクトリとファイルのコピーと移動ディレクトリとファイルの削除ディレクトリとファイルの検索パーミッションの変更解凍と圧縮ディスクとパーティションの操作+テキストの操作+ユーザーとアカウント管理+ネットワークの管理+システム・プロセス管理+その他のコマンド+ |
cp〜ディレクトリやファイルをコピーする既存のディレクトリやファイルを複製(コピー)する コマンド です。 "cp" コマンドには非常に多くのオプションがあります。 オプションを上手に組み合わせれば、ディレクトリ構造ごとコピーしたり、属性を維持したままコピーしたりすることもできますし、更に ワイルドカード を利用すれば複数のファイルやディレクトリを一度にコピーすることもできます。 ファイル操作では最も多用するコマンドのひとつといえるでしょう。 コマンドの一般書式は、 cp [オプション] [コピー元] [コピー先] Enter ですが、[コピー元]と[コピー先]がディレクトリなのかファイルなのかによって動作が異なります。 cp [オプション] [ファイル名1] [ファイル名2] Enter [ファイル名1]と同じ内容を[ファイル名2]でコピーします。 [ファイル名1]と[ファイル名2]が同じディレクトリを指す場合は、[ファイル名1]と[ファイル名2]は違う名前でなければなりません。
cp [オプション] [ファイル名] [ディレクトリ名] Enter [ファイル名]と名前も内容も同じものを、[ディレクトリ名]以下にコピーします。 この場合、[ディレクトリ名]は既に存在していなければなりません(自動で新しいディレクトリが作られることはありません)。
"-R"("-r")〜ディレクトリ内をまるごとコピーする[コピー元]と[コピー先]がともにディレクトリ名の場合には、 "-R"(または"-r") オプションと併用することで[コピー元]以下のディレクトリ構造がそっくりそのまま[コピー先]のディレクトリに複製されます。 cp -R [ディレクトリ名1] [ディレクトリ名2] Enter [ディレクトリ名2]が実在する場合には、[ディレクトリ名2]以下に[ディレクトリ名1]が作成されてそのディレクトリ構造がコピーされます。 |
|||||||||
|
|
[ディレクトリ名2]が実在しない場合には、[ディレクトリ名2]がそのまま作成されて[ディレクトリ名1]以下のディレクトリ構造がコピーされます。この場合、[ディレクトリ名1]と[ディレクトリ名2]は同じである必要はありません。
"-R" と "-r" は、基本的に同じ動作をするオプションで、実用上はあまり意識して区別する必要はありません。詳しくは "man " コマンドでマニュアルを参照してください。 "-p"〜属性やパーミッションを維持してコピーする[コピー元]の所有者、所有者・グループ・アクセス権・アクセス時刻などを維持したまま[コピー先]にコピーするオプションです。 |
|||||||||
| このオプションが指定されない場合、コピー先のファイルは "cp" コマンドを実行したユーザーアカウントとなり、コピーを実行した日時がセットされます。 |
cp -p [コピー元] [コピー先] Enter このオプションは、 サーバー アプリケーション の設定ファイルや、 CGI の実行プログラムやデータファイルなど、所有者や パーミッション 、最終更新日時を維持したままバックアップコピーをとりたいときなどに使うと便利です。 また、 ハードディスク などを増設して、ユーザーの ホームディレクトリ をまるごと移設する、というようなケースでも有効になります。 "-d"〜シンボリックリンクをそのままコピーする[コピー元]がファイルではなく シンボリックリンク の場合、 [コピー先]にシンボリックリンクとしてそのままコピーするオプションです。 |
|||||||||
| このオプションが指定されない場合、コピー先のファイルはシンボリックリンクのリンク先のファイルそのものがコピーされます。 |
cp -d [コピー元] [コピー先] Enter このオプションは単独で使われることはあまりなく、次の "-a" オプションに含まれる形で良く使われます。 "-a"〜属性やディレクトリ構造ごとコピーする[コピー元]の所有者などの属性、 パーミッション 、 ディレクトリ構造、 シンボリックリンク など、 「コピー可能なファイルでコピー可能なものを、可能な限りコピー元の情報をそのままるコピーする」 オプションです。 cp -a [ファイル名1] [ファイル名2] Enter つまり、 cp -dpR [ファイル名1] [ファイル名2] Enter と同じです。 特定のディレクトリや パーティション を丸ごとバックアップを取りたいときなどに使うと便利なオプションです。 "-R" オプションと同様に、 [コピー元]と[コピー先]がともにディレクトリ名の場合には、このオプションを使うことで[コピー元]以下のディレクトリ構造がそっくりそのまま[コピー先]のディレクトリに複製されます。 cp -a [ディレクトリ名1] [ディレクトリ名2] Enter [ディレクトリ名2]が実在する場合には、[ディレクトリ名2]以下に[ディレクトリ名1]が作成されてそのディレクトリ構造がコピーされます。 [ディレクトリ名2]が実在しない場合には、[ディレクトリ名2]がそのまま作成されて[ディレクトリ名1]以下のディレクトリ構造がコピーされます。この場合、[ディレクトリ名1]と[ディレクトリ名2]は同じである必要はありません。 その他のオプション頻繁に使用することはないかもしれませんが、もうひとつ覚えておくとよいオプションがあります。 cp -v [コピー元] [コピー先] Enter ...状況を表示しながらコピー。 実際のコピー動作が表示されながらコピーされます。 cp コマンド は、その他にも様々なオプションがありますが、とりあえずこれだけ覚えていけばよいでしょう
mv〜ディレクトリやファイルを移動する既存のディレクトリやファイルを移動する コマンド です。 ディレクトリ構造ごと移動することもできますし、 ワイルドカード を利用すれば複数のファイルやディレクトリを一度に移動することもできます。 コマンドの一般書式は、 mv [オプション] [移動元] [移動先] Enter ですが、[移動元]と[移動先]がディレクトリなのかファイルなのかによって動作が異なります。 mv [オプション] [ファイル名1] [ファイル名2] Enter [ファイル名1]と同じ内容を[ファイル名2]に移動します。 [ファイル名1]と[ファイル名2]が同じディレクトリを指す場合は、 「ファイル名の変更」 が行われます。 |
|||||||||
|
|
mvコマンドを利用したファイル名の変更は特殊な方法ではなく、ごく一般的に利用される方法ですので覚えておきましょう。
mv [オプション] [ファイル名] [ディレクトリ名] Enter [ファイル名]と名前も内容も同じものを、[ディレクトリ名]以下に移動します。 この場合、[ディレクトリ名]は既に存在していなければなりません(自動で新しいディレクトリが作られることはありません)。
"-f"〜移動先のファイルの上書きを確認しない[移動先]に同名のファイルやディレクトリが存在するとき、mvコマンドは上書きをするか否かの問い合わせを行いますが、 "-f" オプションと併用することで問い合わせなしに強制的に上書きを実行します。 あまり汎用すべきオプションではありませんが、大量のバックアップファイルをオリジナルのディレクトリに書き戻すような場合に利用できることがあります。
ln〜リンクを作成する既存のディレクトリやファイルのリンクを作成する コマンド です。 LinuxOS には、複数の全く同じ実体を持つファイルやディレクトリを別のディレクトリに配置する ハードリンク と、特定のファイルやディレクトリの位置を指し示す シンボリックリンク があります。 ユーザーレベルで一般に多く使われるのは後者のシンボリックリンクで、これは別名 ソフトリンク とも呼ばれ、 WindowsOS の ショートカット や MacintoshOS の エイリアス と同じ働きをするものです。 シンボリックリンクを作成するときのコマンドの一般書式は、 ln -s [リンクの参照元] [作成するリンク名] Enter となります。 [リンクの参照元]に ワイルドカード を利用すると、複数のシンボリックリンクを一度に作成することができます。 |
|||||||||
| 作成先が カレント ディレクトリの場合で[リンクの参照元]と同名のシンボリックリンクを作成するときは、[作成するリンク名]を省略することができます。 |
[作成するリンク名]に既存のディレクトリ名を指定した場合は、[リンクの参照元]と同じ名前のシンボリックリンクがそのディレクトリ以下に作成されます。 [作成するリンク名]に[リンクの参照元]と異なるファイル名を指定した場合には、オリジナルのディレクトリやファイル名とは異なる名前でシンボリックリンクが作成されます。 作成したシンボリックリンクは rm コマンドで削除することができます。
|
|
|
| このサイトは既に更新を終了していますが、今のところ店じまいの予定はありません。 リンクフリー ですので、趣味や勉強のためでしたら、引用、転用、コピー、朗読、その他OKです。このサイトへのリンクについては こちら をご覧ください。 |
| ”Linux”は、Linus Torvalds 氏の各国における登録商標です。”Red Hat”及びRed Hatのロゴおよび Red Hat をベースとしたすべての商標とロゴは、各国におけるRed Hat, Inc. 社の商標または登録商標です。その他のプログラム名、システム名、製品名などは各メーカー、ベンダの各国における登録商標又は商標です。 |