[ 通常表示 ]  [ 簡易表示 ]  [ シンプル表示 ]

「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

expand【コマンド】

pointこの用語のポイント

pointWindowsとUNIX系の両方で使えるコマンドだけど、コマンドの中身は違うよ

point圧縮ファイルを解凍するよ(Windows)

pointタブを半角スペースに変換するよ(UNIX系)

スポンサーリンク

簡単に書くよ

expand【コマンド】とは

テキストファイルの中身のタブを半角スペースに変換して表示するときに使うコマンド(UNIX系のOS)。
もしくは

特定の形式の圧縮ファイルを解凍するときに使うコマンド(Windows系のOS)
です。

image piyo

詳しく書くよ

UNIX系(LinuxとかMacとか)及びWindows系で使えます。
UNIX系とWindows系でコマンドの内容が全然違いますけどね。

まずはUNIX系OSにおける「expand」コマンドについて説明します。

UNIX系OSの「expand」コマンドコマンドライン上からテキストファイルのタブを半角スペースに変換する際に使います。

書き方は、

expand [オプション] [対象のテキストファイル名]

です。
オプションはちらほらとあります。

オプション説明
-i行の先頭にあるタブ(複数個のタブが連続している場合は全部)のみを変換する
-t【数字】1つのタブを【数字】個の半角スペースに置き換える
--helpヘルプを表示する
--versionライセンスとかバージョンとかを表示する

ですね。

例えば

expand hoge.txt

を実行すれば「hoge.txt」の中身のタブが半角スペース8個に変換されて、画面に表示されます。
これが必要最低限、基本的な使い方です。
実際には

expand -t4 hoge.txt > hoge2.txt

のように別ファイルリダイレクトする使い方の方が一般的だとは思いますけどね。

このようにタブを半角スペースに変換するコマンドがUNIX系OSにおける「expand」コマンドです。

次はWindows系OSにおける「expand」コマンドについて説明します。

Windows系OSの「expand」コマンドは圧縮ファイル解凍するコマンドです。
まぁ、どんな圧縮ファイルでも解凍できる訳じゃないのですけどね。
一般的な圧縮形式であるziplzhは解凍できません。

役立たずですね。

おっと、つい本音が漏れてしまいました。
「expand」コマンドさんは、cab形式の圧縮ファイルを解凍する際に重宝します。

書き方は、

EXPAND [-R] 展開元 展開先
EXPAND -R 展開元 [展開先]
EXPAND -I 展開元 [展開先]
EXPAND -D CABファイル名 [-F:ファイル名]
EXPAND CABファイル名 -F:ファイル名 展開先

の5パターンです。

オプションはちらほらとあります。
オプション説明
-R展開先のファイル名を指定する
-I展開先のファイル名を指定する。フォルダ構成は無視する
-D展開元の中身を表示する
-F:【ファイル名】展開するファイルを指定する

ですね。

例えば「A.txt」を圧縮した、ファイル「A.cab」があったとします。
この状態で

EXPAND A.cab hoge.txt

を実行すると「hoge.txt」という名前でファイルが解凍されます。
「どの圧縮ファイルをどんな名前で解凍するよ」と指定した形です。

「どんな名前で解凍するよ」を省略する場合は

EXPAND -R A.cab

のように書きます。
実行すると「A.txt」という名前で解凍されますよ。
「-R」オプションを付けないで

EXPAND A.cab

のように書くと「展開先が指定されていません」と怒られるのでご注意ください。

また別の例として「B」というフォルダの中に「C.txt」を置いて、それを「B」フォルダごと圧縮した、ファイル「BC.cab」があったとします。
「B\C.txt」→「BC.CAB」の形です。
この状態で

EXPAND -R BC.cab

を実行すると「B」フォルダの中に「C.txt」ができる形で解凍されます。
「どの圧縮ファイルを解凍するよ」を指定して「どんな名前で解凍するよ」を省略した形ですね。

さぁ、ここでついに「-I」オプションの登場です。

EXPAND -I BC.cab

を実行すると「C.txt」だけができる形で解凍されます。
「B」フォルダは作成されませんのでご注意ください。
「どの圧縮ファイルを解凍するよ」を指定して「どんな名前で解凍するよ」を省略した形ですが「-I」オプションが付いているので元々のフォルダ構成は無視されます。

また別の例として「D」というフォルダの中に「E.txt」と「F.txt」を置いて、それを「D」フォルダごと圧縮した、ファイル「DEF.cab」があったとしましょう。
「D\E.txt」と「D\F.txt」→「DEF.CAB」の形です。
この状態で

EXPAND -D DEF.cab

を実行すると、実行結果は

def.cab: E.txt
def.cab: F.txt


になります。
圧縮ファイルの中身が表示されました。
さらに

EXPAND DEF.cab -F:E.txt .

を実行すると「D」フォルダの中に「E.txt」ができる形で解凍されます。
「どのファイルを展開してくださ~い」を指定した形です。
指定していない「F.txt」は解凍されないのでご注意ください。

このように圧縮ファイル(主にcabファイル)を解凍するコマンドがWindows系OSにおける「expand」コマンドです。

image piyo2

一言でまとめるよ

まぁ「expand」ってコマンドが出てきたら「タブを半角スペースに変換(UNIX系)、もしくは圧縮ファイルを解凍(Windows系)するときに使うんだな~」と、お考えください。

一番上に戻るよ
スポンサーリンク