#navi(../)
* unexpandコマンドでスペースをタブに変換 [#cdd04a52]
ソースコードなどのスペースインデントなどをタブに変換したい場合、unexpandコマンドによりスペースをタブに変換することができまます。
以下にunexpandコマンドの使用方法を記します。

#contents
#htmlinsertpcsp(linux_ads_top.html,linux-sp.html)

* 関連記事 [#l945f603]
-[[viのインデントをスペースにする方法>逆引きUNIXコマンド/viのインデントをスペースにする方法]]
-[[タブをスペースに変換・expandコマンド>タブをスペースに変換>逆引きUNIXコマンド/タブをスペースに変換]]
-[[HEX形式でファイルを見たい・odコマンド>逆引きUNIXコマンド/HEX形式でファイルを見たい]]

* unexpandコマンドの使用例 [#b2e220fb]
unexpandコマンドの使用方法を以下に記します。
-構文
 unexpand -a -t 8 入力ファイル名 > 出力ファイル名
-説明
オプションの -t 8は、スペース8文字を1つのタブに変換することを指定しています。~
スペース4つで1つのタブにしたい場合は、-t 4でにすればよいことになります。~
オプション-aは先頭からのタブを対象にするだけではなく、行中のタブとスペースからななる文字列も対象となります。

逆のタブをスペースに変換したい場合は、「[[タブをスペースに変換>逆引きUNIXコマンド/タブをスペースに変換]]」を参照してください。

* unexpandコマンドでタブをスペースに変換してみる [#z2434070]
以下のテキストファイルをunexpandコマンドでスペースに変換してみます。
#ref(space.txt)
 Linux
     CentOS
         Debian
             Ubuntu

odコマンドでHEX表示してみました。
0x20がスペースになります。
 $ od -tx1c space.txt
 0000000  4c  69  6e  75  78  0a  20  20  20  20  43  65  6e  74  4f  53
           L   i   n   u   x  \n                   C   e   n   t   O   S
 0000020  0a  20  20  20  20  20  20  20  20  44  65  62  69  61  6e  0a
          \n                                   D   e   b   i   a   n  \n
 0000040  20  20  20  20  20  20  20  20  20  20  20  20  55  62  75  6e
                                                           U   b   u   n
 0000060  74  75  0a
           t   u  \n
 0000063

unexpandコマンドで4スペースをタブに変換してみます。
 Linux
 	CentOS
 		Debian
 			Ubuntu
odコマンドでタブ(\t, 0x09)になっているかを確認してみます。
 $ unexpand -t 4 -a space.txt | od -tx1c
 0000000  4c  69  6e  75  78  0a  09  43  65  6e  74  4f  53  0a  09  09
           L   i   n   u   x  \n  \t   C   e   n   t   O   S  \n  \t  \t
 0000020  44  65  62  69  61  6e  0a  09  09  09  55  62  75  6e  74  75
           D   e   b   i   a   n  \n  \t  \t  \t   U   b   u   n   t   u
 0000040  0a
          \n
 0000041

4つ続いているスペースがタブ(0x09)に変換されています。

以上、unexpandコマンドの使用法でした。

#htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS