cp
ファイルをコピーする。
書式 cp [option] source-file(directory) target-file(directory)
(ex.1) cp -r ./a /home/duke/
[-r] directoryも含めてそこに含まれる全てファイルやdirectoryをcopyする。
<実行結果>
directory"a"以下の全てのfile,directoryが/home/duke/にcopyされます。
/home/duke/にdirectory"a"が既に存在する場合は、/home/duke/a/a/となり、
directory"a"が存在しない場合は、/home/duke/a/となります。
copy元の./aの配下に/dev/xxxxxxのようなファイルがある場合、正しくcopyされず、copy先のパーティションを
あふれさせたりすることもあるようです。その場合はoptionを-rではなく、-Rにすると良いでしょう。
(ex.2) cp name_a name_b
<実行結果>
ファイルname_aがname_bというファイル名で作成されます。
(ex.3) cp -f name_a name_b
<実行結果>
ファイルname_aがname_bというファイル名で作成されます。コピー以前にファイルname_bが存在していた場合、
元のファイルは削除されて新たに作成されます。
(ex.4) cp ./*.txt ~/
<実行結果>
カレントディレクトリの拡張子が"txt"のファイルを全てホームディレクトリにコピーします。
(ex.5) cp ./a???.txt ~/
<実行結果>
カレントディレクトリのファイル名が4文字でかつ"a"で始まり、拡張子が"txt"のファイルを
全てホームディレクトリにコピーします。
(ex.6) cp ./* ~/ &
<実行結果>
コマンドの最後に&をつけるとcp コマンドがバックグラウンドで実行され、
コンソールは入力受付に復帰します。大量のファイルをCOPYする時に有効です。
ただし、実行中のメッセージは表示されないので、メッセージやlogが見たいコマンドの場合は、
cp ./* ~/ >log.txt &
の様にリダイレクトて、logを記録します。
(ex.7) cp ./0[1-2]* ~/
<実行結果>
カレントディレクトリのファイル名が"01"or"02"で始まるファイルを
全てホームディレクトリにコピーします。
このような書き方を正規表現と呼び、ファイルをまとめて扱うために指定する条件を表現するために
特別な文字が決められています。([],{},*,? , etc)