綾小路龍之介の素人思考

[linux] perlの正規表現が使えるrenameコマンド

複数のファイルに対してある基準でファイル名変更をする単純作業はrenameコマンドを使うことで効率的に出来る。

まずはヘルプを見るがあまりにも簡素で困る。そこでmanを参照。DESCRIPTIONに書かれた例は示唆に富んでいるな。

$ rename -h
Unknown option: h
Usage: rename [-v] [-n] [-f] perlexpr [filenames]
$ man rename

reameコマンドはperlで書かれたスクリプトである。内容は以下のようにして見れる。perlで書かれたrenameコマンドはLarry Wallが書いたものとそれ以外が混在している様子。

$ which rename
/usr/bin/rename
$ vi `which rename`

カレントディレクトリにある*.tar.1というファイルを*.tarにrenameする場合は以下。

$ rename -v 's/\.tar\.1$/.tar/' *.tar.1
hoge.tar.1 renamed as hoge.tar

リファレンス

  1. ファイル名を一括変更するには(renameコマンド) - Ubuntu Japanese Wiki
  2. TEMPEST社長ブログ: Linuxでファイル名をまとめて変更する
  3. Rename multiple files with Linux | Linux Operating System|1
  4. rename perlexpr - Google 検索
  5. Perlのrenameスクリプト - 日々のメモ@はてな
  6. 複数のファイルの名前をまとめて変更する - 技術メモ帳
  7. rename perl風正規表現を使ってファイル名更新 - おもてなしの空間
  8. Linuxで正規表現でファイルの名前を変更
  9. rename perl 正規表現 - Google 検索

ソーシャルブックマーク

  1. はてなブックマーク
  2. Google Bookmarks
  3. del.icio.us

ChangeLog

  1. Posted: 2009-12-10T13:00:57+09:00
  2. Modified: 2009-12-10T13:00:57+09:00
  3. Generated: 2016-12-03T23:09:17+09:00