Linux 中的 unexpand 命令示例
要将前导空格和制表符转换为制表符,存在一个名为unexpand命令的命令行实用程序。
默认情况下, unexpand命令将每个空格转换为制表符,将生成的输出写入标准输出。这是 unexpand 命令的语法:
句法 :
$unexpand [OPTION]... [FILE]...
其中,OPTION 是指与 unexpand 兼容的选项,FILE 是指文件名。
使用 unexpand 命令
要将文件kt.txt中的所有空格字符转换为制表字符,请使用unexpand as :
$cat -vet kt.txt
have a nice day$
always try harder$
to achieve better$
/* In the below output $ refers to
the new line feed and ^I refers
to the tab */
$unexpand kt.txt
have^Ia^Inice^Iday$
always^Itry^Iharder$
to^Iachieve^Ibetter$
为了将 unexpand 命令生成的输出保存在另一个文件中,假设dv.txt使用以下语法:
/* Saving output in file, dv.txt */
$unexpand kt.txt>dv.txt
$cat -vet dv.txt
have^Ia^Inice^Iday$
always^Itry^Iharder$
to^Iachieve^Ibetter$
unexpand 命令的选项
- -a, – -all 选项:此选项用于转换所有空白,而不仅仅是初始空白(默认情况下)。
/* This converts all the blanks also into tabs */ $unexpand -a kt.txt>dv.txt
- – -first-only 选项:这用于仅转换前导空格序列(覆盖 -a 选项)。
/* This converts only the leading sequences of blanks */ $unexpand --first-only kt.txt>dv.txt
- -t, – -tabs=N 选项:这将设置制表符分开 N 个字符,而不是默认的 8 个(启用 -a 选项)。
/* the -t option with numerical value 2 forces to change the spaces into tabs of only 2 characters */ $unexpand -t2 kt.txt>dv.txt
- -t, – -tabs=LIST 选项:此选项使用逗号分隔的制表符位置列表(启用 -a 选项)。
- – -help 选项:显示帮助信息并退出。
- – -version 选项:显示版本信息并退出。
另见:展开命令