カテゴリ: Linuxコマンド集 更新日: 2025/11/15

cp -nオプションの使い方|既存ファイルを上書きしないコピー方法を初心者向けに解説!

cp -nオプション|既存ファイルを上書きしないコピー方法
cp -nオプション|既存ファイルを上書きしないコピー方法

先生と生徒の会話形式で理解しよう

生徒

「Linuxでファイルをコピーするときに、元のファイルを間違って上書きしてしまうのが心配です…」

先生

「そんなときは-nオプションを使うと便利ですよ。コピー先に同じファイルがある場合、上書きせずにそのままスキップしてくれるんです。」

生徒

「えっ、自動で上書きしないってことですか?」

先生

「その通りです。とても安全なコピー方法なので、初心者にもおすすめですよ。」

1. cpコマンドとは?

1. cpコマンドとは?
1. cpコマンドとは?

Linuxのcpコマンドは、ファイルやディレクトリをコピーするための基本的なコマンドです。たとえば、ファイルを別のフォルダに複製したいときに使います。

以下のように使います。


cp sample.txt backup/

このコマンドは、「sample.txt」を「backup」フォルダにコピーします。

ただし、「backup」フォルダにすでに同じ名前のファイルがあると、そのファイルは上書きされてしまいます

2. cp -nオプションとは?

2. cp -nオプションとは?
2. cp -nオプションとは?

-nオプションは「no-clobber(ノークラッバー)」の略で、すでにコピー先に同名ファイルがある場合は上書きせずにスキップする動作をしてくれます。

コマンドの例は次のとおりです。


cp -n sample.txt backup/

このコマンドでは、「backup」フォルダに「sample.txt」がすでに存在していれば、コピーされずにそのまま残ります

3. 実際の動作を見てみよう

3. 実際の動作を見てみよう
3. 実際の動作を見てみよう

まずは2つのファイルを準備してみましょう。


echo "古いデータ" > backup/sample.txt
echo "新しいデータ" > sample.txt

この状態で、-nオプションを使ってコピーします。


cp -n sample.txt backup/

次に中身を確認してみましょう。


cat backup/sample.txt
古いデータ

このように、古いファイルがそのまま残っていることがわかります。つまり、-nオプションによって上書きされなかったということです。

4. -nオプションが便利な場面

4. -nオプションが便利な場面
4. -nオプションが便利な場面

cp -nは、以下のような場面でとても役立ちます。

  • バックアップフォルダに大切なファイルがすでにあるとき
  • たくさんのファイルをコピーするとき、上書きミスを防ぎたいとき
  • 定期的にフォルダにコピーするが、毎回全部上書きしたくないとき

安全にファイルを扱いたいときは、まず-nを試してみるのが安心です。

5. cp -nと-i、-fの違いを知ろう

5. cp -nと-i、-fの違いを知ろう
5. cp -nと-i、-fの違いを知ろう

cpコマンドには他にも似た動きをするオプションがあります。

  • -f(force):強制的に上書きする
  • -i(interactive):上書き前に確認する
  • -n(no-clobber):既存ファイルは上書きしない

初心者が安全にファイルを扱うには、-i-nの使用がおすすめです。

自動で止めたいなら-n、都度聞かれたいなら-iという使い分けがポイントです。

6. cp -nと-v、-rの組み合わせ例

6. cp -nと-v、-rの組み合わせ例
6. cp -nと-v、-rの組み合わせ例

-nは他のオプションと組み合わせて使うこともできます。

  • -v(verbose):コピーされたファイル名を表示
  • -r(recursive):フォルダ全体を再帰的にコピー

たとえば次のように使えば、フォルダの中身をすでにあるファイルを上書きせずにコピーできます。


cp -rnv images/ backup/

この例では、imagesフォルダの中身をbackupフォルダにコピーし、既存ファイルはスキップされ、新しくコピーされたファイルだけが表示されます。

7. -nを使うときの注意点

7. -nを使うときの注意点
7. -nを使うときの注意点

-nオプションはとても便利ですが、以下の点に注意しましょう。

  • すでにあるファイルはコピーされないため、本当に新しいファイルだけコピーしたいときに使う
  • 上書きが必要な場面では-fを使うなど、目的に応じて選ぶことが大切
  • ファイル名の間違いに気づかないままコピーしないで終わることもある

-nは「上書きしたくない」という明確な目的があるときに、もっとも効果を発揮します。

関連記事:
カテゴリの一覧へ
新着記事
cp -aオプションとは?Linuxで属性付きコピーをするアーカイブモードの基本
less -Fオプションの使い方を完全ガイド!1画面に収まるときは自動で終了
cpコマンドとは?Linuxでファイルやディレクトリをコピーする基本操作を初心者向けに解説
rm -vオプションの使い方を解説!削除したファイル名を確認しながら安心操作
人気記事
No.1
Java&Spring記事人気No1
cdコマンドとは?Linuxでディレクトリを移動する基本を初心者向けに解説
No.2
Java&Spring記事人気No2
findコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイル検索の基本
No.3
Java&Spring記事人気No3
Linuxのmkdirコマンドとは?初心者でもわかる新しいディレクトリ作成の基本
No.4
Java&Spring記事人気No4
rmコマンドとは?Linuxでファイルやディレクトリを削除する基本