col 过滤反向换行

作用

过滤掉标准输入中的反向换行。

什么是反向换行符?

反向换行符 Reverse/Retrorse Line Feed:ESC-7(escape then 7)

半反向换行符 Half Reverse Line Feed:ESC-8 (escape then 8)

顾名思义,换行符使得光标到达下一行的开头,反向换行符会使得光标回到上一行的开头;半反向换行符会使得光标回到上一行,但是不会到达开头。

语法

col [options]

参数

  • -b, --no-backspaces  不输出任何退格符,只打印写入每个列位置的最后一个字符

  • -f, --fine  允许正向半换行符(half-forward line feeds)。通常,处于半行分界线上的字符打印在下一行

  • -h, --tabs  将多个空格转换为Tab,一般 4 个 空格转为 1 个 Tab

  • -l, --lines NUMBER  设置缓冲行为 NUMBER,默认为 128

  • -p, --pass  不转换未识别的控制符

  • -x, --spaces  将 Tab 转为多个空格,一般 1 一个 Tab 转为 4 个空格

  • -H, --help  显示帮助信息并退出

  • -V, --version  显示版本信息并退出

示例

(1)将 tab 转换成空格,如下:

# 创建一个文档
hxstrive@localhost:~$ cat demo
1
        2
3
# 将文档中的tab转换成空格
hxstrive@localhost:~$ cat demo | col -x > demo2

注意:其中 “|” 是管道符号,用于建立管道,把 cat demo 命令的输出结果转为 col 命令的输入数据。

(2)将 man 命令的帮助文档保存为 man_help,使用 -b 参数过滤所有反向换行符。如下:

hxstrive@localhost:~$ man man | col-b > man_help

更多关于命令详细参考手册,请使用 man 命令或者 --help 参数获取帮助信息

关于
本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明,如果原文没有版权声明,请来信告知:hxstrive@outlook.com
公众号