つつみくんのLinux記

つつみくんのLinux記

PR

プロフィール

つつみくん

つつみくん

サイド自由欄

つつみくんのLinux記は、自宅のLinux「Fedora14」と、モバイルのLinux「Netwalker」と「Ubuntu10.10ノート」と「EeePC Ubuntu」で作っています!
リンク、トラックバックなども大歓迎です。(^^)♪
お買い物は↓コチラから

カレンダー

キーワードサーチ

▼キーワード検索

May 5, 2024
XML
こんにちは(^^)/

Windowsやスマホではコマンドではなく、GUI(グラフィカル ユーザー インターフェース:アイコンなどを使ってコマンドを打ち込まずにユーザーが操作できる方法)を使ってファイルの操作をしますね。

そして、GUIでファイルやフォルダをコピーするには、一旦コピーしてからペースト(貼り付け)するというのが一般的です。(ドラックアンドドロップもありますが・・・)

ところがシェルのコマンドでは、ドロップの必要はなく、コピーコマンドを使うとファイルのコピーが作成できてしまいます。(^^)

さて、このファイルやディレクトリをコピーするコマンドは何でしょうか?
ヒントはコピーの英語をアルファベット2文字で表します。











答えは
cp
です!(^^)

わずか4文字の「copy」という単語を2文字に短縮してしまうというのは、本気で打ち込む文字数を減らしにかかっていますね。(^^;)

「cp」だけでなく今まで出てきたコマンドも、軒並み2文字で表現されているのは、単純にキーボードを打つ回数を減らすという意味だけでなく、昔は今ほど通信スピードが早くなかったので、なるべく通信で送る文字数を減らしたいということで、よく使うコマンドは少ない文字数で表現されていました。
(さすがに、インターネットなどの通信で使うことを前提に作られたシェルですね(^^))

さて、cpの基本的な使い方ですが、
cp 「コピーしたいファイルやフォルダ名」 「コピー先」
になります。


例えば、「test.txt」というテキストファイルを「Documents」というディレクトリの中に移動するコマンドは、
cp test.txt Documents/
になります。


ところがこのcpコマンド
、コピー先はディレクトリでなくても構いません。

例えば、「test.txt」と全く同じ内容の「test2.txt」を作りたい場合は、
cp test.txt test2.txt
とすると、ファイルのコピーが作成できてしまいます。


ですから、「test.txt」を「Test」というディレクトリにコピーしようと思って、「Test」ディレクトリがない場合でも、
cp test.txt Test
としてしまうと、「test.txt」というテキストファイルと同じ内容の「Test」というテキストファイルが作られてしまいます。(^^;)


Linuxのコマンド上では「.txt」のような拡張子は見やすいように付けているだけなので、拡張子の無い「Test」というテキストファイルも普通に作れてしまいます。

この場合、ディレクトリ内にコピーしたいという意志を明確にしたい場合は、
cp test.txt Test/
という風に、ディレクトリ名の最後に「/」を付けましょう。そうすると、もし「Test」というディレクトリが存在しないときは、

というように、通常ファイルをディレクトリとしてコピーできないというエラーが出てくれます。(^^)

ちなみに、コピーするときの注意点としては、オプションを付けないと所有者やパーミッションは、実行しているユーザーの新しいパーミッションが付けられてしまいます。

その上、新しくコピーされたファイルやディレクトリのタイムスタンプもコピーされたときの日時になってしまいますね。

そんなときは、「cp -p test.txt Documents/」というふうに「-p」オプションを付けると、元のファイルと同じパーミッションで同じ所有者(rootの場合だけ)で同じタイムスタンプとしてコピーされます。


それから、ファイルだけでなくディレクトリも同じようにコピー出来ますね。
試しに「mkdir Test」で「Test」というディレクトリを作って、それをコピーしてみます。(mkdirはディレクトリを作るコマンドです。(^^))
「cp Test/ Documents/」とすると、「Test」ディレクトリが「Documents」ディレクトリの中にコピーされそうな気がしますが、


ディレクトリをコピーするときは「-r」オプションを付けないと駄目みたいです。(^^;)
「-r」オプションは、「
--recursive」(再帰的)オプションの略で、ディレクトリの中にあるファイルやディレクトリを全てコピーするという意味になります。


先程、「test.txt」を「Documents」ディレクトリの中にコピーしましたので、「-r」を付けて「Documents」フォルダをコピーすると、その中の「test.txt」もコピーされましたね。(^^)

このように、ファイルやディレクトリをコピーするには「cp」コマンドを使ってください。「ペースト」は必要ありませんよ。(^^)♪

それでは、また次回お会いしましょう(^^)/







お気に入りの記事を「いいね!」で応援しよう

最終更新日  May 22, 2024 01:30:48 AM
コメント(0) | コメントを書く


【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! -- / --
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x
X

© Rakuten Group, Inc.
X
Design a Mobile Website
スマートフォン版を閲覧 | PC版を閲覧
Share by: