Work Life Fun

仕事も人生も楽しむ社労士

複数のファイル名の先頭や末尾に文字を一瞬で追加してリネーム(zmv)

コンピュータの認識として、1、2、3・・・、10と数字があった場合、その順番として、1、10、2、3・・・となってしまいます。

そのため、人の認識に合わせて並べる場合、01、02、03としておく必要があります。

そんなときに使うのが、bashによるコマンド操作。ただ、Macのデフォルトは、bashからzshに変更されているので、以下はzshで用いる場合の解説になります。

zmvでファイルを一括リネーム

以下のように育児・介護休業関係の実務では多くの様式を利用します。

これらのPDFを1つのファイルにまとめる方法は、複数のPDFファイルを一瞬で1つにまとめる無料ツール:pdfuniteでも紹介しましたが、このままのファイル名で合体してしまうと、合体したファイルの並び順が、1、10、2、3・・・となってしまいます。

そこで、ファイル名の変更という一手間が必要になります。

コマンドは簡単で、以下の1行だけです。

$ zmv -W '*.pdf' '0*.pdf'

実行前に、うまく変換できるか念のため確認したいときは、オプション「W」の前に「n」をつけて、以下のように「-nW」とするだけです。

$ zmv -nW '*.pdf' '0*.pdf'

調べてみると「rename」による正規表現を用いた解説が多かったのですが、なぜかMacでは「rename」が「zsh: command not found: rename」になっており、zshの問題なのか、macOSの問題なのかは不明。

まあ、zmvの方が複雑なこともできるようですし、正規表現よりも直感的なので良しとしておきます。

なお、本記事は以下を参考にしたものです。詳しすぎる解説に感謝です。

参考:Zshメモ : zmvコマンドでリネーム(連番、ゼロ埋め、置換、拡張子、大文字、小文字など)

【無料】効率的に人事労務の情報を入手しませんか?
  • 毎年のように改正される労働法令への対応に頭を悩ませている
  • 総務や経理などの他の業務を兼務しているので、人事労務業務だけに時間を割けない

といった悩みを抱える企業の経営者・人事労務担当者向けに、公開型のブログでは書けない、本音を交えた人事労務に関する情報・ノウハウ、時期的なトピックをメールマガジンを配信しています。

過去の配信分は公開しないため、情報が必要な方は、いますぐ以下のフォームから購読の登録をしてください。購読して不要と思ったら簡単に解除できますのでご安心ください。


up_line