mv – ファイルやディレクトリを移動・名前変更するコマンド

移動・コピー

mv コマンドは、ファイルやディレクトリを移動したり、名前を変更 するコマンドです。
コピー (cp) と違い、元のファイルは残らず移動されます。リネーム操作も mv で行います。

bashについて、基本的な考え方や使い方については bash から参照ください。

構文(Syntax)

mv [オプション] コピー元 コピー先
mv [オプション] コピー元...  コピー先ディレクトリ

主なオプション一覧

オプション説明使用例
(なし)ファイルを移動またはリネームmv old.txt new.txt
-i上書き前に確認mv -i file.txt backup.txt
-f確認せずに強制上書きmv -f file.txt backup.txt
-n既存ファイルを上書きしないmv -n file.txt backup.txt
-uコピー元が新しい場合のみ上書きmv -u file.txt backup.txt
-v実行内容を表示mv -v file.txt backup.txt
--backup上書き前にバックアップを作成mv --backup file.txt backup.txt
--suffix=SUFバックアップファイルの拡張子を指定mv --backup --suffix=.bak file.txt backup.txt

実行例

ファイルをリネーム

mv file.txt file_old.txt

ディレクトリを移動

mv dir1 /tmp/

上書き前に確認

mv -i report.txt report_old.txt

出力例:

mv: overwrite 'report_old.txt'? y

強制的に上書き

mv -f config.conf /etc/config.conf

更新されたファイルだけ上書き

mv -u new_data.csv data.csv

実行内容を表示

mv -v old.log archive.log

出力例:

renamed 'old.log' -> 'archive.log'

複数ファイルをまとめて移動

mv *.txt /home/user/docs/

エラー例(存在しないファイル)

mv notfound.txt dest.txt

出力例:

mv: cannot stat 'notfound.txt': No such file or directory

関連コマンド

  • cp : ファイルやディレクトリをコピー
  • rm : ファイルやディレクトリを削除
  • install : コピー+パーミッション設定(インストール用途向け)

備考

  • 同じファイルシステム内では inode を移動するだけ なので高速です。
  • 異なるファイルシステム間では内部的に cprm が行われ、時間がかかることがあります。
  • mv はリネーム操作として使われることが多いですが、ファイル整理にもよく利用されます。

参考

Bash玄

はじめまして!Bash玄です。

エンジニアとしてシステム運用に携わる中で、手作業の多さに限界を感じ、Bashスクリプトを活用して業務を効率化したのがきっかけで、この道に入りました。「手作業は負け」「スクリプトはシンプルに」をモットーに、誰でも実践できるBashスクリプトの書き方を発信しています。

このサイトでは、Bashの基礎から実践的なスクリプト作成まで、初心者でもわかりやすく解説しています。少しでも「Bashって便利だな」と思ってもらえたら嬉しいです!

# 好きなこと
- シンプルなコードを書くこと
- コマンドラインを快適にカスタマイズすること
- 自動化で時間を生み出すこと

# このサイトを読んでほしい人
- Bashに興味があるけど、何から始めればいいかわからない人
- 定型業務を自動化したい人
- 効率よくターミナルを使いこなしたい人

Bashの世界に一歩踏み出して、一緒に「Bash道」を極めていきましょう!

Bash玄をフォローする

コメント