Linuxターミナルでテキスト、ファイル、フォルダーをコピー&ペーストする方法

コピー&ペーストはコンピュータで最もよく使用されるアクションの1つです。Ctrl + CおよびCtrl + Vのキーボードショートカットを使用すると簡単ですが、Linuxターミナルではそれほど簡単ではありません。作業を完了するためのいくつかのオプションがあります。ここでは、Linuxターミナルでテキスト、ファイル、ディレクトリをコピー&ペーストする方法を紹介します。
目次
- テキストのコピー&ペースト
- 単一ファイルのコピー&ペースト
- フォルダーとその内容のコピー&ペースト
- 複数ファイルのコピー&ペースト
- 同じタイプのすべてのファイルのコピー&ペースト
- コピーをよりインタラクティブにする
- RsyncとCP
- ファイルまたはフォルダーを移動する
- よくある質問
こちらもお読みください: Linuxでディレクトリを削除する方法
テキストのコピー&ペースト
ターミナルでテキストの一部をコピーしたいだけの場合は、マウスでハイライトし、Ctrl + Shift + Cを押すだけです。
カーソルのある場所にペーストするには、キーボードショートカットCtrl + Shift + Vを使用します。
ペーストショートカットは、Word文書(または他のアプリケーション)からテキストの一部をコピーしてターミナルにペーストする場合にも適用されます。たとえば、ブラウザのウェブページからコマンドをコピーし、Ctrl + Shift + Vショートカットを使用してターミナルにペーストできます。
何らかの理由でこれらのキーボードショートカットが機能しない場合、ターミナルが正しく構成されていない可能性があります。キーボードショートカットをカスタマイズできるオプションを探してください。これらは最も人気のあるターミナルの指示です:
- Gnomeターミナル – ハンバーガーメニューをクリックし、「設定」をクリックします。「ショートカット」に移動し、「編集」にスクロールします。「コピー」と「ペースト」のオプションがそこに表示され、構成できる準備が整います。
- Konsole – 「設定」に移動し、「キーボードショートカットの構成」をクリックします。「コピー」を検索し、前述のキーコンボを使用するように構成し、「ペースト」についても同様に行います。
ほとんどの他のターミナルでは、コンソールでのコピー/ペーストのためのデフォルトのユニバーサルコンビネーションにロックされ、構成することはできません。
こちらもお読みください: コマンドラインデータ転送のためのcURLの使用方法
単一ファイルのコピー&ペースト
Linuxコマンドラインでファイルやフォルダーをコピーしたいときは、上記のキーボードショートカットは機能しません。cpコマンドを使用する必要があります。cpはコピーの略です。構文もシンプルです。cpの後にコピーしたいファイルと移動先を指定します。
cp your-file.txt ~/Documents/
もちろん、これはファイルが作業しているディレクトリにあることを前提としています。両方を指定することもできます。
cp ~/Downloads/your-file.txt ~/Documents/コピー中にファイルの名前を変更するオプションもあります。移動先で新しい名前を指定します。
cp ~/Downloads/your-file.txt ~/Documents/new-name.txtこちらもお読みください: Linuxでddコマンドを使用する方法
フォルダーとその内容のコピー&ペースト
フォルダーとその内容をコピーするには、cpコマンドに再帰的にコピーするように指示する必要があります。それは-rフラグを使用することで簡単にできます。
cp -r ~/Downloads/pictures-directory ~/Pictures/family-vacation-pics
残りの構文はすべて同じです。-rフラグは、cpにディレクトリを扱っていることを伝え、その内容をコピーする必要があることを示します。
ペーストアクションが既存のファイルを上書きするようにしたい場合は、-fフラグを追加できます。
cp -rf ~/Downloads/pictures-directory ~/Pictures/family-vacation-picsこちらもお読みください: Linuxでrmコマンドを使用する方法
複数ファイルのコピー&ペースト
複数のファイルをコピーすることもできます。Linuxコマンドラインでは、ブラケット{}を使用して複数のアイテムを一度にターゲットにできます。これを使用して、コピーする各ファイルの名前をカンマで区切ってリストできます。
cp ~/Downloads/{file1.txt,file2.jpg,file3.odt} ~/Documents/
異なるファイルタイプの3つのファイルがすべてDocumentsディレクトリにコピーされます。
同じタイプのすべてのファイルのコピー&ペースト
同じタイプのファイルがたくさんある場合は、ワイルドカード文字*を使用できます。アスタリスク/ワイルドカードは、Linuxコマンドラインにその場所で絶対に何でも受け入れるように指示します。したがって、Linuxに*.jpgをコピーするように指示すると、名前や.jpgの部分の前に何があっても、すべてのJPGファイルがコピーされます。
cp ~/Downloads/*.jpg ~/Pictures/
複数のファイルタイプ、たとえばJPGとPNGを使用したい場合は、前述のブラケットを使用できます。
cp ~/Downloads/*.{jpg,png} ~/Pictures/こちらもお読みください: コピーを許可しないサイトでのコピー&ペーストの方法
コピーをよりインタラクティブにする
このガイドに従っているときに気づいたかもしれませんが、cpを使用しても、何かを完了した後に確認やプロンプトは表示されません。エラーが発生した場合を除いて。これは、特に遅いハードウェアで非常に大きなファイルコピー操作を行っているときに、少し不安を引き起こす可能性があります。
コマンドに-vフラグを追加することで、cpに最も詳細な出力を提供するように指示します。-iフラグは確認プロンプトを提供し、特定のファイルを上書きするなどの操作をキャンセルする機会を与えます。
cp -rvi ~/Downloads/*.jpg ~/Pictures/一般的に、-vおよび-iフラグはLinuxで一般的な多くのコマンドで利用可能です。
RsyncとCP
ファイルを上書きするいくつかのコピー操作を行う必要がある場合(たとえば、時々更新するバックアップを作成する場合)、rsyncはあなたを笑顔にするかもしれません。
rsyncは、各ファイルの詳細に入り込み、両方のデータを完全に比較し、ファイル自体の中で変更されたデータのみを上書きします。これは、宛先フォルダーがSSDにある場合に特に便利で、書き込みサイクルを節約し、全体のファイルを上書きすることでドライブの健康を不必要に悪化させることはありません。
Linuxでファイルをコピーするためにrsyncを利用する方法を学びましょう。
こちらもお読みください: Linuxでターミナル出力をファイルに保存する方法
ファイルまたはフォルダーを移動する
ファイルを別の場所に移動して複製を作成したくない場合は、それも簡単にできますが、ファイルを移動するにはmvコマンドが必要です。構文はcpと非常に似ています。
mv ~/Downloads/your-file.txt ~/Documents/同様に、ファイルの名前を変更することもできます。
mv ~/Downloads/your-file.txt ~/Documents/renamed.txtただし、1つの大きな違いがあります。フォルダー全体を移動するには-rフラグは必要ありません。
mv ~/Downloads/downloaded-folder ~/Pictures/vacation-picsよくある質問
rsyncはcpより優れていますか?
一般的にはどちらも優れているわけではありません。rsyncは、ソースフォルダーと宛先フォルダーの両方のファイルを完全に比較し、帯域幅や書き込みサイクルを節約するためにいくつかのコンピュータリソースを使用します。特定のフォルダーのバックアップを常に更新している場合には最適ですが、単一のコピー操作を行う場合には理想的ではありません。
cpは、単に作業を完了させるためのスイスアーミーナイフのように機能します。何かを上書きする必要がある場合、cpがそれを行います。インタラクティブ性があるため、初心者にも優しく、コピー操作をより制御できます。
なぜターミナルからアイテムをコピーするのにCtrl+Cを使えないのですか?
Linuxターミナルアプリケーションでは、キーボードでCtrl + Cを押すと、カーネルにSIGINT(割り込み)信号が送信されます。これは、特定のターミナルで実行中のものを停止するようにLinuxに指示する簡単な方法です。
ターミナルで「コピー」機能をそのキーの組み合わせに応じて構成すると、実行中のコマンドからテキストの行をコピーする際に問題が発生します。
画像クレジット: Neron Photos on Pexels