• twitter
  • facebook
文学・歴史資料のデジタル加工入門

MS-DOSでできること・その2「拡張子・ワイルドカードとバッチファイルについて」 【文学・歴史資料のデジタル加工入門4】 (木越 治)

●ワイルドカード

ワイルドカードというのは、Windows で使うことはあまりない(というより、使いようがない)が、MS-DOS でのファイル操作においては必須の概念である。といっても、むずかしいことではなく、「*」(半角)でもって「任意の文字列」をあらわす、というだけのことである。
これも、広い意味では正規表現の一種であるが、文字列を検索・置換するときとはちがう使い方になるので、とりあえずはファイル用の便利な表現形式と思っておけばいい。また、これに類するもので、任意を一文字をあらわす「?」というのもある。

だから、

dir *.*

とやれば、「任意のファイル名」のついた「任意の拡張子」のファイルを意味するから、すべてのファイルを指定したことになる。また、

dir a*.*

は、先頭に「a」のつくファイル全部をあらわすが、この逆の、最後に「a」のつくファイル全部というつもりで、

dir *a.*

とやってもエラーになる。可能なのは、「?」を利用した、

dir ??a.txt (三文字目がaというファイル)

だが、こういうのはほとんど実用上は意味がないだろう。日本語ももちろん使用可能だから、

文学・歴史資料*.*

とやることで、この連載用に書いてきた「文学・歴史資料のデジダル加工入門(1)~(4)」関係のファイル全部を指定できることになる。
さらに、拡張子で区別することも可能だから、「*.doc」はWordファイル全部、「*.jtd」は一太郎のファイル全部を指定したことになる*

*と書いたところで、いま「dir *.doc」とやって確認したところでは、「*.doc」で、「*.doc」も「*.docx」も表示するようである。とすると、新バージョンのWordファイルだけを指定したいときは、「*.docx」とやればいいが、旧バージョンファイルだけを指定する方法はないことになる……。そういう必要はないと Microsoft は、考えているのだろうか?
 それにしても、なぜ、WordやExcelはソフトウェアのバージョンを変えるときに拡張子まで変えてしまうのだろうか? マクロを含むエクセルのファイルを「xlsm」とするのは、特別の機能を付加したファイルを意味するためだろうから理解できるにしても、基本のファイル名を「doc」/「xls」から「docx」/「xlsx」に変更したのは、旧バージョンを使わせないためだとしか思えない(古いWord/Excelでは「docx」/「xlsx」というファイルは読めないようになっている)。一太郎も頻繁にバージョンアップするソフトだが、基本の拡張子に関しては「jtd」のままである。だから、新バージョンで作ったファイルを旧バージョンで読み込んでもほとんど支障がない。別に悪口を書きたいわけではないが、こういうユーザーのことをあまり考えないMicrosoftの姿勢には、やはり納得できないと言い続ける必要があるだろう。

この連載では、もとの原稿は一太郎で書いているが、メールに添付して送るときは、担当編集者は一太郎ユーザーではないので、Wordに変換して送っている。また、画像もあるから、PDFでのやりとりになることも多いのだが、このワイルドカードとMS-DOSのいくつかのコマンドを利用すれば、ファイルの種類別にフォルダに整理することが簡単にできる。