現在のWindows 11 Ver.23H2では、ファイルアーカイブ形式としてtar(ター)がサポートされている。tarはTape ARchiveの略で、もともとはUnix/Linux系で複数のファイルをまとめて磁気テープ装置に記録するためのコマンドだった。
ただし、複数ファイルを1つのファイルにまとめることができ、今で言うアーカイバーとしても利用できた。

Unixには、初期の頃からar(ARchiveの略)というコマンドがあった。arは、当初、プログラムにリンクするバイナリファイルを1つのライブラリファイルにまとめるために作られた。一般に複数のファイルを1つのファイルにまとめるソフトウェアを「アーカイバー」(Archiver)と呼ぶ。arは、1971年のUnix V1のmanページに記載がある。1971年は、Intelの最初のマイクロプロセッサ4004が作られた年である。

これに対してtarコマンドがmanページに記載されるのは1979年のUnix V7から。これは、PC-8001が発売された頃。まだ8 bitマシンが主流だった頃である。

tarコマンドは、POSIXやBSD、GNUなどで開発されたときに互換性が考慮されたが、特定のシステムで使うことが前提のarについてはプラットフォームごとに固有の実装が使われた。tarが現在でも生き残り、最近Windowsの標準ファイル形式の1つになったのも複数プラットフォーム間で動作し、まだLinuxなど使われているからである。

しかし、MS-DOSが全盛の1985年、arを元にarcと呼ばれたコマンドが作られた。
arcは、それまで別プログラムだったアーカイバーと圧縮プログラムを組み合わせたもので、当時のモデムを使ったBBSアクセス(パソコン通信。インターネットはまだ民間に開放されていなかった)で広く使われることになる。作者は、Thom Hendersonでその個人会社がSystem Enhancement Associates(SEA)社である。その後登場したのがarcよりも高速なpkarcだ。開発者はPhil Katz(同PKWARE社)。しかし、SEA社はソースコードが盗用されたとしてPKWARE社に対して裁判を起こす。この裁判に敗訴したPhil Katzが次に開発したのがPKZIPだ。arを起点にさまざまなアーカイバーが作られた。arは現在のアーカイバーの先祖と言っていいだろう。

これに対して、tarコマンドは、テープなどの磁気媒体を使ったプラットフォーム間の転送に使われるため、POSIXで標準化され、BSD系Unix、GNUなどで開発が行われ、オープンソース・ソフトウェアとして広く流通することになる。MS-DOSで発展してきたPKARCやPKZIPはバイナリ配布であり、「オンラインソフト」として流通することになる。

tarは、WSLのバックアップコマンドで内部的に使われたことから、Windows 10でBSD系Unixで使われていたtar(bsdtar)がコマンドとして同梱される。
しかし、Windowsでは長らく、ZIPのみがエクスプローラーの標準圧縮アーカイブ形式として使われていた。

Windows 11 Ver.23H2では、エクスプローラーが複数の圧縮/アーカイブ形式に対応している(表01)。サポートされている拡張子は、コマンドラインから調べないとわからない。これには、MS-DOS時代からあるcmd.exeの内部コマンドassocを使うしかない(レジストリから同様の情報を抽出することは可能ではある)。このコマンドでファイル形式が「ArchiveFolder」になっているものを探す。ただ、RAR形式は、R00からR99までの100個の拡張子を使うため、これを省いたほうが見やすいだろう。PowerShellからなら

cmd /c assoc | sls '(?
編集部おすすめ