用示例在 LINUX 中扩展命令
每当您在 LINUX 中处理文件时,可能会出现这样的情况:您被困在一个包含许多选项卡的文件中,并且无论您需要对文件做什么,都需要该文件没有选项卡但有空格。在这种情况下,如果您正在处理一个小文件,那么任务看起来很简单,但是如果您正在处理的文件非常大,或者您需要对大量文件执行此操作,该怎么办。对于这种情况,LINUX 有一个名为expand的命令行实用程序,它允许您将制表符转换为文件中的空格,当没有指定文件时,它会从标准输入中读取。
因此, expand对于像在排序之前那样预处理包含制表字符的字符文件很有用。 expand实际上将生成的输出写入标准输出,并将制表字符扩展为空格字符。在这种情况下,退格字符会保留到输出中,并且还会减少制表符计算的列数。
展开的语法:
//...syntax of expand...//
$expand [OPTION] FILE
这个语法很容易理解。它只需要一个文件名 FILE,您想在其中将制表字符扩展为空格字符,如果没有传递文件名,它会从标准输入中读取并将结果提供给标准输出。
例子 :
假设您有一个包含制表字符的文件名 kt.txt。您可以使用扩展为:
//using expand//
$expand kt.txt
/* expand will produce
the content of the file in
output with only tabs changed
to spaces*/
请注意,如果需要在多个文件中进行这种类型的更改,那么您只需在输入中传递所有文件名,选项卡将被转换为空格。
您还可以将所做更改的输出传输到其他文件中,例如:
$expand kt.txt > dv.txt
/*now the output will get
transfer to dv.txt as
redirection operator >
is used*/
展开命令的选项:
1. -i, – – 初始选项:可能需要转换行前的制表符,并保持非空白后出现的制表符不变。简而言之,此选项不允许在非空白后转换制表符。
//using -i option//
$expand -i kt.txt
/*this will not change
those tabs that appear
after blanks*/
2. -t, – – tabs=N 选项:默认情况下,expand 将制表符转换为相应数量的空格。但是可以使用 -t 命令行选项调整空格数。此选项要求您输入要转换制表符的新空格数 (N)。
//using -t option//
$expand -t1 kt.txt > dv.txt
/*this will convert the
tabs in kt.txt to 1 space
instead of default 8
spaces*/
您还可以将其用作:
$expand --tabs=1 kt.tx > dv.txt
/*this will also convert tabs to
one space each*/
3. -t, – -tabs=LIST 选项:使用逗号分隔的制表符位置列表。
4. – -help :这将显示帮助信息并退出。
5. –version :这将显示版本信息并退出。
在扩展命令方面,选项的数量并不多。所以,这几乎是关于 expand 命令的所有内容。
另请参阅:unexpand 命令