zoukankan      html  css  js  c++  java
  • linux 中的col命令

    col命令:

    看介绍是过滤掉reverse line feeds

    要明白什么是reverse line feeds,我们要先明白什么是line feeds

    首先介绍一下new line(换行符)

    https://en.wikipedia.org/wiki/Newline

    ,在linux中,换行符new line,就是line feed ( )这个ASCII符号

    new line 在不同操作系统下是不一样的,

    在windows中是 ,在unix中是 ,

    之所以造成这种原因,是因为传统的打字机实现,

    使用打字机到一行的最后一个字符的时候,应该执行下面的两步操作:

    1.向下换新的一行(换行)

    2.回到行首(回车)

    按理说这就应该是 和 的雏形了,但是实际受打印机的机械结构限制,只使用这两个命令会有一些问题,如还没回到行首又打起来..回到行首的过程中把纸张碰脏了...

    所以不同的打字机会有一些底层的驱动内部实现,同时对外暴露出的接口就形成了一些不同的规范

    所以才出现了 派和 派

    ... reverse line feed 是干吗的呢,就是向上走一行..

    除了向上走一行,我们还可以向左走半行 或者 向左走部分..

    比如说打字机的一个打粗体的hack,打字的时候,想加粗一个字 ,我们可以控制打字机退回到前面的一个字符(backspace)..在重新打一遍,打了两遍就是加醋了

     (上面这些控制字符都会被过滤掉)

    下面看一个实例:  

    man ascii

    我们可以看到NAME和ascii是被加粗的

    man ascii | vi - (将标准输入给vi作为输入 -代表标准输入,因为vi不会自动读取stdin)

    我们可可以看到这里就是历史遗留的hack.. ^H(脱字符+H)是backspace,也就是退回去让他们重打一遍加粗

    man ascii | col

    这里就不是加粗的了,因为backspace控制符已经被过滤掉了。

  • 相关阅读:
    统计一行字符串中每个字母个数
    不定宽高的文字在div中垂直居中
    转:Python 与 Excel 不得不说的事
    Centos 6安装python3.5
    day04
    day03
    Day02
    python ciscolib模块
    三级菜单
    模拟登陆系统
  • 原文地址:https://www.cnblogs.com/eret9616/p/12287723.html
Copyright © 2011-2022 走看看