更新升级 专属应用 系统故障 硬件故障 电脑汽车 鸿蒙刷机 鸿蒙开发Linux教程 鸿蒙开发Linux命令
当前位置:HMXT之家 > 鸿蒙开发Linux命令 > Linux col、cmp、clockdiff、consoletype命令的用法及解释

Linux col、cmp、clockdiff、consoletype命令的用法及解释

更新时间:2022-01-23 08:36:51浏览次数:642+次

以下为你详细解释col、cmp、clockdiff、consoletype命令的用法。

\

Linux col命令的用法及解释

Linux col命令是一个标准输入文本过滤器,它从标注输入设备读取文本内容,并把内容显示到标注输出设备。在许多UNIX说明文件里,都有RLF控制字符。当我们运用shell特殊字符>和>>,把说明文件的内容输出成纯文本文件时,控制字符会变成乱码,col命令则能有效滤除这些控制字符。

1、语法

col(选项)

2、选项

-b:过滤掉所有的控制字符,包括RLF和HRLF;

-f:滤掉RLF字符,但允许将HRLF字符呈现出来;

-x:以多个空格字符来表示跳格字符;

-l<缓冲区列数>:预设的内存缓冲区有128列,用户可以自行指定缓冲区的大小。

Linux cmp命令的用法及解释

Linux cmp命令用来比较两个文件是否有差异。当相互比较的两个文件完全一样时,则该指令不会显示任何信息。若发现有差异,预设会标示出第一个不通之处的字符和列数编号。若不指定任何文件名称或是所给予的文件名为“-”,则cmp指令会从标准输入设备读取数据。

1、语法

cmp(选项)(参数)

2、选项

-c或--print-chars:除了标明差异处的十进制字码之外,一并显示该字符所对应字符;

-i<字符数目>或--ignore-initial=<字符数目>:指定一个数目;

-l或——verbose:标示出所有不一样的地方;

-s或--quiet或——silent:不显示错误信息;

-v或——version:显示版本信息;

--help:在线帮助。

3、参数

目录:比较两个文件的差异。

4、实例

使用cmp命令比较文件"testfile"和文件"testfile1"两个文件,则输入下面的命令:

cmp testfile testfile1            #比较两个指定的文件

在上述指令执行之前,使用cat命令查看两个指定的文件内容,如下所示:

cat testfile                    #查看文件内容  

Absncn 50                       #显示文件“testfile”  

Asldssja 60  

Jslkadjls 85

cat testfile1                   #查看文件内容  

Absncn 50                       #显示文件“testfile1”  

AsldssjE 62  

Jslkadjls 85  

然后,再执行cmp命令,并返回比较结果,具体如下所示:

cmp testfile testfile1       #比较两个文件  

testfile testfile1           #有差异:第8字节,第2行  

注意:在比较结果中,只能够显示第一比较结果。

Linux clockdiff命令的用法及解释

Linux 在ip报文的首部和ICMP报文的首部都可以放入时间戳数据。clockdiff程序正是使用时间戳来测算目的主机和本地主机的系统时间差。

1、选项

-o:使用IP时间戳选项来测量系统时间差。时间戳只用3个。

-o1:使用IP时间戳选项来测量系统时间差。用4个时间戳。如果-o和-o1都没有设置,那么就是用ICMP时间戳来测试系统时间差。

2、实例

lixi@lixi-desktop:~$ ping -T tsandaddr www.ustc.edu.cn -c 1

PING www.ustc.edu.cn (202.38.64.9) 56(124) bytes of data.

64 bytes from 202.38.64.9: icmp_seq=1 ttl=62 time=0.823 ms

TS:     lixi-desktop.local (210.45.74.25)    12522473 absolute

210.45.74.1    -251

local-gw.ustc.edu.cn (202.38.64.126)    248

202.38.64.9    -857514

Unrecorded hops: 3

--- www.ustc.edu.cn ping statistics ---

1 packets transmitted, 1 received, 0% packet loss, time 0ms

rtt min/avg/max/mdev = 0.823/0.823/0.823/0.000 ms

首先由上面的得出在RRT不大的时候,几个ICMP时间戳的关系。本地主机和202.38.64.9之间的时间差约为:-857514+248-251=-857517。分别用-o(IP选项中时间戳)和不带选项(ICMP路由时间戳)上述路由的系统时间进行测试。得到的结果:

lixi@lixi-desktop:~# ./clockdiff -o 202.38.64.9  

..................................................

host=202.38.64.9 rtt=1(0)ms/1ms delta=-857517ms/-857517ms Wed Dec 17 11:28:30 2021

lixi@lixi-desktop:~# ./clockdiff 202.38.64.9

..................................................

host=202.38.64.9 rtt=750(187)ms/0ms delta=-857517ms/-857517ms Wed Dec 17 11:28:35 2021

两种方法测试的都比较准确。

lixi@lixi-desktop:~#./clockdiff gigagate1.Princeton.EDU

..................................................

host=gigagate1.Princeton.EDU rtt=307(21)ms/271ms delta=-5ms/-5ms Wed Dec 17 11:50:16 2021

上面是测试一个RTT较大的目的主机和本地主机的系统时间差。不过在使用clockdiff的时候,需要一点运气,因为很多路由会忽略ICMP或IP时间戳。

Linux consoletype命令的用法及解释

Linux consoletype命令用于打印已连接的终端类型到标准输出,并能够检查已连接的终端是当前终端还是虚拟终端。

1、语法

consoletype

2、实例

[root@localhost ~]# consoletype

pty