【busybox记录】【shell指令】unexpand

目录

内容来源:

【GUN】【unexpand】指令介绍

【busybox】【unexpand】指令介绍

【linux】【unexpand】指令介绍

使用示例:

空格转化成制表符 - 默认输出

空格转化成制表符 - 转换所有的空格

空格转化成制表符 - 指定制表位

常用组合指令:

指令不常用/组合用法还需继续挖掘:


内容来源:

        GUN : Coreutils - GNU core utilities

        busybox v1.36.1 : 【busybox记录】【shell指令】基于的Busybox的版本和下载方式-CSDN博客

【GUN】【unexpand】指令介绍

unexpand:将空格转换为制表符
	unexpand 将每个给定文件的内容(如果没有给出标准输入,则为标准输入)写入标准输出,将每行开头的空格转换为所需的任意数量的制表符。在默认的POSIX区域设置中,空格是空格或制表符;其他地区可以指定额外的空白字符。
简介:
	unexpand [option]... [file]...
	默认情况下,unexpand只转换每行的初始空格(所有非空白字符之前的空格)。它在输出中保留退格字符;它们减少选项卡计算的列数。默认情况下,每8列设置一个制表符。
	该程序接受以下选项。参见第2章[常见选项],第2页。
‘-t tab1[,tab2]...’
‘--tabs=tab1[,tab2]...’
	如果只给出了一个制表位,则将制表符tab1列设置为间隔,而不是默认的8列。否则,在列tab1, tab2,…设置制表符。(从0开始编号),并在给定的制表位之后留下空白。制表位可以用空格分隔,也可以用逗号分隔。
	作为一个GNU扩展,最后指定的选项卡可以以' / '作为前缀,以指示用于剩余位置的选项卡大小。例如,--tabs=2,4,/8将在位置2和4处设置制表位,并在此之后设置每个8的倍数。
	此外,指定的最后一个制表位可以在前面加上' + ',以表示剩余位置的制表位大小,与最后明确指定的制表位的偏移量。
	例如,要忽略diff输出中存在的1个字符的gutter,可以使用--tabs=1,+8指定1个字符的偏移量,这将在位置1,9,17,…这个选项包含-a选项。
	为了兼容性,GNU unexpand支持废弃的选项语法,-tab1[,tab2]…,其中制表位必须用逗号分隔。(与-t不同,这个废弃的选项并不意味着-a。)新的脚本应该使用--first-only -t tab1[,tab2]…代替。
‘-a’
‘--all’ 
	还要转换制表位之前的所有两个或多个空格序列,即使它们出现在一行中的非空白字符之后。
退出状态为零表示成功,非零值表示失败。

【busybox】【unexpand】指令介绍

NA

【linux】【unexpand】指令介绍

[root@localhost bin]# unexpand --help
用法:unexpand [选项]... [文件]...
将每个指定文件中的空白字符转换为制表符并写到标准输出。

如果没有指定文件,或者文件为"-",则从标准输入读取。

必选参数对长短选项同时适用。
  -a, --all        转换所有空格,包括但不只是起始空格
      --first-only  仅转换起始空格(覆盖-a 选项)
  -t, --tabs=N     设置制表符宽度为 N 字符而非默认的 8(启用 -a 选项)
  -t, --tabs=LIST  use comma separated list of tab positions
                     The last specified position can be prefixed with '/'
                     to specify a tab size to use after the last
                     explicitly specified tab stop.  Also a prefix of '+'
                     can be used to align remaining tab stops relative to
                     the last specified tab stop instead of the first column
      --help		显示此帮助信息并退出
      --version		显示版本信息并退出

GNU coreutils 在线帮助:<https://www.gnu.org/software/coreutils/>
请向 <http://translationproject.org/team/zh_CN.html> 报告 unexpand 的翻译错误
完整文档请见:<https://www.gnu.org/software/coreutils/unexpand>
或者在本地使用:info '(coreutils) unexpand invocation'

使用示例:

空格转化成制表符 - 默认输出

测试结果显示,只有前面是8个空格的才会被转换为制表符,如果空格个数不够,那么就没有变化

指令: unexpand test2.txt | cat -A

空格转化成制表符 - 转换所有的空格

-a 选项。

测试结果显示,虽然介绍说是所有的空格都转化,实际上转化的空格个数不确定

指令:unexpand test2.txt -a | cat -A

1和2之间有8个空格

2和3之间有4个空格

3和4之间有8个空格,实际结果并没有都转成制表符

空格转化成制表符 - 指定制表位

-t 选项 没有搞明白,以后搞明白了再更新

指令: unexpand test2.txt -t 1 | cat -A

常用组合指令:

NA

指令不常用/组合用法还需继续挖掘:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梦幻面条EW

感谢您的打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值