mv コマンドの使い方やよく使うオプションをご紹介します。
mv コマンドとは
ファイルやディレクトリをの名前を変更したり、別のディレクトリへ移動するのに使うコマンドです。
mv コマンドの基本的な使い方
基本構文
mv [option] 移動元 移動先
移動元のファイルやディレクトリの名前を移動先で指定した名前に変更します。
移動先が他のディレクトリの場合はそこへ移します。
使用例
$ ls
text.txt
$ mv text.txt text1.txt
$ ls
text1.txt
text.txt が text1.txt へリネームされています。
mv コマンドのオプション
-b:ファイルを上書きする際に、バックアップを作成する
$ ls
text1.txt text2.txt
$ mv -b text1.txt text2.txt
$ ls
text2.txt text2.txt~
$
移動先で既存のファイルを上書きしてしまうときに-b オプションを使うことでそのバックアップを取ることができます。
~(チルダ)が付いているのがバックアップです。
-i:上書きの前に確認を行う
$ ls
text1.txt text2.txt
$ mv -i text1.txt text2.txt
mv: `text2.txt' を上書きしますか? y
$ ls
text2.txt
$
移動先で既存のファイルを上書きしてしまうときに確認メッセージが表示されます。
-f:上書きの前に確認を行わない
-i とは逆で、移動先で既存のファイルを上書きしてしまうときでも確認なく処理が続行されます。
今回この記事を書くにあたり実際にコマンドを試しているのですが、-f の有無にかかわらず確認なく処理が続行されるようでした。
もしお使いの環境で確認のメッセージが表示されるようでしたら、-f を使ってお試しください。
-n:既存のファイルを上書きしない
$ ls
text1.txt text2.txt
$ cat text1.txt
text1
$ cat text2.txt
text2
$ mv -n text1.txt text2.txt
$ ls
text1.txt text2.txt
$ cat text1.txt
text1
$ cat text2.txt
text2
$
移動先で既存のファイルを上書きしてしまうときに-n オプションを使うことで上書きされないようにすることができます。
-v:何が行われているかを説明する
$ mv -v text1.txt text2.txt
'text1.txt' -> 'text2.txt'
$ ls
text2.txt
$
-v オプションでは mv コマンドで今何が行われているかを表示させることができます。
-h:mv コマンドのヘルプを表示する
$ mv --h
使用法: mv [OPTION]... [-T] SOURCE DEST
または: mv [OPTION]... SOURCE... DIRECTORY
または: mv [OPTION]... -t DIRECTORY SOURCE...
Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY.
Mandatory arguments to long options are mandatory for short options too.
--backup[=CONTROL] ファイルを上書きする際に、バックアップを作成する
-b --backup 同様だが、引数をとらない
-f, --force 上書きの前に確認を行わない
-i, --interactive 上書きの前に確認を行う
-n, --no-clobber 既存のファイルを上書きしない
-i, -f, -n を一つ以上使用した場合、最後のオプションが使用されます。
--strip-trailing-slashes 各 SOURCE 引数の最後にあるスラッシュ (/) を取り除く
-S, --suffix=SUFFIX 通常のバックアップ接尾辞を SUFFIX で上書きする
-t, --target-directory=DIRECTORY move all SOURCE arguments into DIRECTORY
-T, --no-target-directory treat DEST as a normal file
-u, --update move only when the SOURCE file is newer
than the destination file or when the
destination file is missing
-v, --verbose explain what is being done
-Z, --context set SELinux security context of destination
file to default type
--help この使い方を表示して終了する
--version バージョン情報を表示して終了する
The backup suffix is '~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.
The version control method may be selected via the --backup option or through
the VERSION_CONTROL environment variable. Here are the values:
none, off バックアップを作成しない (--backup を付けた時でも)
numbered, t 番号付きバックアップを作成する
existing, nil 番号付きバックアップがあれば番号付き、
そうでなければ、simple で作成する
simple, never 常に簡易バックアップを作成
GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
mv の翻訳に関するバグは <http://translationproject.org/team/ja.html> に連絡してください。
完全な文書を参照する場合は info coreutils 'mv invocation' を実行してください。
$
-h オプションでは mv コマンドの使い方やオプションを確認することができます。
他にもオプションが多数あるので、目的に応じてお試しください。