ファイル名を変更する(リネーム) ren

ren
初心者でも使える簡単なコマンドのご紹介です。
今回は「ren」というコマンドの解説をします。
このrenはファイル名やディレクトリ名を変更するコマンドで、 renameとも書く事が出来ます。 意味的にはrenameの方がわかりやすいのですが、 入力しやすいという理由より、私はrenを使用しています。
ややこしいオプションなどもなくとても単純なコマンドなのですが、 リネームさせるファイルの数が少ない場合は、普通にGUI環境から変更させる方が早いです。
また、単独では余り複雑なリネームを行う事はできない為、 このコマンドのみで使用する機会は余りないのではないかと思うのですが、 とりあえず今回は脱線せず、renのみの解説をします。
では最後まで宜しくお願いいたします。

このページのトップへ
以下はren(rename)の書式とパラメータです。
ren ファイル名1 ファイル名2
rename ファイル名1 ファイル名2

ファイル名1 リネームするファイル名、またはディレクトリ名を指定
ファイル名2 リネーム後のファイル名、またはディレクトリ名を指定。パスは指定不可

コマンド名はrenでもrenameでもどちらでもOK
renコマンドにはオプションはありません。
コマンドに続いてファイル名1で指定したファイル 及びディレクトリ名が、ファイル名2で指定した名前に置き換わります。
上のパラメータの説明にも書いてあるとおり、ファイル名1にはパスを指定する事ができますが、 ファイル名2にはパスを指定する事はできません。
また、もしもファイル名2に指定した名前と同名のファイルがディレクトリにあった場合、 エラーとなってリネームする事ができません。
renコマンドは、沢山のファイルの名前や拡張子を一括変更したい場合などに便利ですが、 その場合にもファイル名に一定の規則性があるなどの条件が必要となります。
また、一応ファイル名にワイルドカードを指定する事は出来ますが、 その場合にも使用できる条件が限定的なものに限られてしまうので、 renは単独ではなく他のコマンドや、バッチファイルの中に組み込んで使用する事が多いと思います。
ですが、とりあえずここではren単独での使用例をいくつか挙げていく事にします。
なお、バッチファイルについてはいずれ書くつもりではいますが、
まだまだ記事を書く予定のコマンドが沢山ありますので、当分先になると思います。
このページのトップへ

ではまず一つ目の例です。
下の画像のようなテキストファイルとフォルダをサンプルとして使用します。
サンプルファイルとフォルダ
aaaaa
aaa_a.txt
bbb_b.txt
ccc_c.txt
ddd_d.txt
eee_e.txt
fff_f.txt
renのリネーム例
C:¥sample2>ren fff_f.txt ppp_p.txt
renを使用し、fff_f.txtppp_p.txt というファイル名に変更します。
renのリネーム例
このコマンドは実行しても画面には何も表示されません。
renのリネーム例
fff_f.txtppp_p.txtというファイル名に リネームされました。
aaaaa
aaa_a.txt
bbb_b.txt
ccc_c.txt
ddd_d.txt
eee_e.txt
ppp_p.txt
このページのトップへ

次は、ディレクトリ内のテキストファイルの拡張子「txt」を「csv」に変更します。
renのリネーム例
C:¥sample2>ren *.txt *.csv
renのリネーム例
全てのテキストファイルの拡張子が、「.csv」に変更されました。
aaaaa
aaa_a.csv
bbb_b.csv
ccc_c.csv
ddd_d.csv
eee_e.csv
ppp_p.csv
このページのトップへ

では次は、ワイルドカードを使用して複数のファイル名と拡張子を一括変更してみます。
renのリネーム例
C:¥sample2>ren *_*.csv www_*.txt
*_*.csv」を「www_*.txt」に変更します。
renのリネーム例
ファイル名の前半3文字が「www」に、拡張子が「txt」 に変更されました。
aaaaa
www_a.txt
www_b.txt
www_c.txt
www_d.txt
www_e.txt
www_p.txt
このページのトップへ
ここでの注意点として、 renで複数のファイル名を一括でリネームする場合、 どのような名前のファイルでも変更できるわけではなく、またリネーム後のファイル名の指定にも制限があります。
例えば・・
renのリネーム例
このディレクトリ内のファイルに対し・・
renのリネーム例
C:¥sample2>ren *_*.txt aaaa_*.txt
*_*.txt」を「aaaa_*.txt」に変更しようとすると・・
renのリネーム例
重複するファイル名が存在するか、またはファイルが見つかりませんでした。」 と表示され、ファイルをリネームする事が出来ません。
このページのトップへ
一体なぜでしょうか。
少し長くなりますが、以下をご覧下さい。
■リネーム前のファイル

aaaaa1.txt
aaaaa2.txt
aaaaa3.txt
■「aaaaa*.txt」を「sssss*.txt」にリネーム
C:¥sample2>ren aaaaa*.txt sssss*.txt

リネーム後のファイル

sssss1.txt
sssss2.txt
sssss3.txt
■「aaaaa*.txt」を「sss*.txt」にリネーム
C:¥sample2>ren aaaaa*.txt sss*.txt

リネーム後のファイル

sssaa1.txt
sssaa2.txt
sssaa3.txt

↑上から3文字目までが、指定した「sss」に置き換わっている
■しかし「aaaaa*.txt」を「ssssss*.txt」にリネームしようとすると・・
C:¥sample2>ren aaaaa*.txt ssssss*.txt
重複するファイル名が存在するか、またはファイルが見つかりませんでした。
重複するファイル名が存在するか、またはファイルが見つかりませんでした。

リネーム後のファイル

ssssss.txt
aaaaa2.txt
aaaaa3.txt

一番はじめのファイルはリネームされたが、2つ目以降でエラー
このように複数ファイルの名前を一括変更する際に、ファイル名の先頭からリネームしようとすると、 変更しようとした文字と同じ文字数分が、リネーム前のファイル名の先頭から置き換わります。
「aaaaa1.txt」を「sss*.txt」に → 「sssaa1.txt」
「aaaaa2.txt」を「sss*.txt」に → 「sssaa2.txt」
「aaaaa3.txt」を「sss*.txt」に → 「sssaa3.txt」
この場合だとファイル名が重複する事はありませんが・・
「aaaaa1.txt」を「ssssss*.txt」に → 「ssssss.txt」
「aaaaa2.txt」を「ssssss*.txt」に → 「ssssss.txt」
「aaaaa3.txt」を「ssssss*.txt」に → 「ssssss.txt」
この場合だとファイル名が重複してしまうので、2つ目以降でエラーが出てしまうのです。
このページのトップへ
もう少しだけ例をあげてみます。
■リネーム前のファイル

aaa1.txt ←このファイル名だけ短い
aaaaa2.txt
aaaaa3.txt
■「aaa*.txt」を「sssss*.txt」にリネーム

C:¥sample2>ren aaa*.txt sssss*.txt

sssss.txt ←aaa1.txtだけリネーム前のファイル名の文字数を超えている
sssss2.txt
sssss3.txt

2つ目以降のファイル名とは重複しないのでリネームが行われる
このページのトップへ
■リネーム前のファイル

aaa1.txt ←ファイル名が短い
aaa2.txt ←ファイル名が短い
aaaaa3.txt
■「aaa*.txt」を「sssss*.txt」にリネーム

C:¥sample2>ren aaa*.txt sssss*.txt

sssss.txt ←リネーム前のファイル名の文字数を超えているが、変更される
aaa2.txt ←前のファイルと同じ名前になってしまうので変更されない
sssss3.txt
このページのトップへ
■リネーム前のファイル

a1aaa.txt
a2aaa.txt
a3aaa.txt
■「a*.txt」を「s*.txt」にリネーム
C:¥sample2>ren a*.txt s*.txt

リネーム後のファイル

s1aaa.txt
s2aaa.txt
s3aaa.txt

先頭から1文字目まではリネームされても支障なし
■「a*.txt」を「ss*.txt」にリネーム
C:¥sample2>ren a*.txt ss*.txt

ssaaa.txt ←最初のファイルはリネームされる
a2aaa.txt ←ファイル名が重複してしまうのでエラー
a3aaa.txt ←ファイル名が重複してしまうのでエラー

先頭から2文字目がリネームされてしまうと、
後のファイル名が重複してしまうのでエラーになってしまいました。
このように renで複数ファイルのリネームを行う場合は、 上に挙げたいくつかの例のように使用できる条件が限られてしまう為、 ren単独での使用はあまり実用的ではないと思います。
はじめの方にも書きましたが、 renは他のコマンド(forなど)と組みあわせたり、 バッチファイルに記述して使う方法が一般的です。
このページのトップへ

ren(rename)の解説は以上となります。
今回は短くまとまるかなと思っていたのですが、
あれもこれもと書き足しているうちに随分長くなってしまいました。
ですが内容自体は優しいものだったと思います。
今回の記事で何度か出てきたバッチファイルについては、 まだ当分先だとは思いますが記事で取り上げる予定です。 その時にまたrenが出てくると思います。
ちなみに、高度なリネームを行う事ができるソフトウェアはフリーのものでも沢山あります。 私もそれらのソフトウェアには頻繁にお世話になっていますが、 それでもまだまだ世間ではコマンドやバッチファイルを作成してのやり方は健在です。
では長い文章、お付き合い頂きありがとうございました。
また次回もどうぞ宜しくお願い致します。
このページのトップへ
リネーム
バッチファイル

※キーマンズネットのIT単語帳ページへ飛びます。
様々なIT専門用語の意味を詳しく知る事ができます。
サイト上の情報利用により生じた損害等には一切責任を持ちません
2009.10.01 Thursday | 初心者でも簡単コマンドプロンプト | comments(1) | trackbacks(0) | 記事URL
▲PAGETOP
同カテゴリーの記事 最新5件
Comment:
2011/12/29 9:30 AM, - wrote:
管理者の承認待ちコメントです。
Add a comment:











※コメントは管理者が承認後表示されます。
Trackback:
http://shop.denkaseihin.com/trackback/591
※記事と関連性が低い等、管理人が不適当と判断したものについては削除させて頂きます。
新着記事
CATEGORY
まめ知識
COMMENT
  • 巨大なサイズのファイルも一瞬で削除出来るコマンド del
    denkaseihin (04/15)
  • 巨大なサイズのファイルも一瞬で削除出来るコマンド del
    原田 (04/14)
  • HPの h8-1080jpレビュー 内蔵GPU〜GTX580まで可のSandy Bridge搭載マシン
    denkaseihin (09/18)
  • HPの h8-1080jpレビュー 内蔵GPU〜GTX580まで可のSandy Bridge搭載マシン
    ヨーイチ (09/18)
  • HPの h8-1080jpレビュー 内蔵GPU〜GTX580まで可のSandy Bridge搭載マシン
    denkaseihin (09/14)
  • HPの h8-1080jpレビュー 内蔵GPU〜GTX580まで可のSandy Bridge搭載マシン
    MN (09/13)
  • Firefoxでcookieが保存されないという現象が発生したら
    denkaseihin (10/28)
  • Firefoxでcookieが保存されないという現象が発生したら
    KEKE (10/27)
SMTWTFS
      1
2345678
9101112131415
16171819202122
23242526272829
30      
<< June 2019 >>
RSS
ARCHIVES
MOBILE
qrcode
LINK

Copyright © 2005 - denkaseihin. All Rights Reserved.