Linuxコマンド辞典 unexpandコマンド(テキスト処理)

スペースをタブに変換する「unexpand」コマンドの概要と使い方を記載しています。

RHEL Fedora CentOS Vine Deblan Ubuntu Plamo

参考サイト:Man page of INSTALL

概要・使用方法

複数のスペースをまとめてタブに変換します。ファイルを指定した場合は、そのファイルの内容を変換します。ファイル名を指定しない場合や、「-」を指定した場合は、標準入力からの入力を待ちます。「-a」オプションを使用すると行頭以外にある空白も変換します。

書式

$ cut [オプション] [ファイル名・・・]

オプション

-a
–all
行頭以外の空白も変換する。
-t スペース数
–tabs=スペース数
指定したスペース数をタブに変換する(デフォルトは8)

タブをスペースに変換する

スペース(半角空白)が含まれているテキストファイルのスペースをタブに変換します。-tオプションは、何個の空白に対して1タブに変換するか指定します。

$ unexpand -t 空白数 ファイル名

スペース(半角空白)が含まれているテキストファイルを準備します。

実行結果

表示上、認識しやすいように「sed -e “s/\t/$/g”」にパイプで渡し$に置き換えています。また、半角空白4つに対して、1タブに変換しています。

[sunarin@localhost work]$ unexpand -t 4 Animal_garden_unix_spc.txt | sed -e "s/\t/$/g"
ライオン
$インドライオン Indian lion
$バーバリーライオン Barbary lion
$セネガルライオン P.l. senegalensis
$コンゴライオン Northeast Congo Lion
サイ
$キタシロサイ Northern white rhinoceros
$ミナミシロサイ Southern white rhinoceros