设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 数据 手机 公司
当前位置: 首页 > 服务器 > 搭建环境 > Windows > 正文

一套有用的Unix实用程序(2)

发布时间:2018-09-01 04:06 所属栏目:117 来源:Sk
导读:ifdata 实用程序可用于检查网络接口是否存在,也可用于获取网络接口的信息,例如 IP 地址等。与预装的 ifconfig 和 ip 命令不同, ifdata 的输出更容易解析,这种设计的初衷是便于在 Shell 脚本中使用。 如果希望查

ifdata 实用程序可用于检查网络接口是否存在,也可用于获取网络接口的信息,例如 IP 地址等。与预装的 ifconfigip 命令不同,ifdata 的输出更容易解析,这种设计的初衷是便于在 Shell 脚本中使用。

如果希望查看某个接口的 IP 地址,不妨以 wlp9s0 为例,运行如下命令:

  1. $ ifdata -p wlp9s0
  2. 192.168.43.192 255.255.255.0 192.168.43.255 1500

如果只查看掩码信息,运行如下命令:

  1. $ ifdata -pn wlp9s0
  2. 255.255.255.0

如果查看网络接口的物理地址,运行如下命令:

  1. $ ifdata -ph wlp9s0
  2. A0:15:46:90:12:3E

如果判断接口是否存在,可以使用 -pe 参数:

  1. $ ifdata -pe wlp9s0
  2. yes

pee 命令

该命令某种程度上类似于 tee 命令。

我们先用一个例子看一下 tee 的用法。

  1. $ echo "Welcome to OSTechNIx" | tee file1 file2
  2. Welcome to OSTechNIx

上述命令首先创建两个文件,名为 file1file2;接着,将 “Welcome to OSTechNix” 行分别附加到两个文件中;最后,在终端中打印输出 “Welcome to OSTechNix”。

pee 命令提供类似的功能,但与 tee 又稍微有些差异。查看下面的例子:

  1. $ echo "Welcome to OSTechNIx" | pee cat cat
  2. Welcome to OSTechNIx
  3. Welcome to OSTechNIx

从上面的命令输出中可以看出,有两个 cat 命令实例获取 echo 命令的输出并执行,因而终端中出现两个同样的输出。

sponge 实用程序

这是 moreutils 软件包中的另一个有用的实用程序。sponge 读取标准输入并写入到指定的文件中。与 Shell 中的重定向不同,sponge 接收到完整输入后再写入输出文件。

查看下面这个文本文件的内容:

  1. $ cat file1
  2. I
  3. You
  4. Me
  5. We
  6. Us

可见,文件包含了一些无序的行;更具体的说,这些行“没有”按照字母顺序排序。如果希望将其内容安装字母顺序排序,你会怎么做呢?

  1. $ sort file1 > file1_sorted

这样做没错,对吧?当然没错!在上面的命令中,我将 file1 文件内容按照字母顺序排序,将排序后的内容保存在 file1_sorted 文件中。但如果使用 sponge 命令,你可以在不创建新文件(即 file1_sorted)的情况下完成同样的任务,命令如下:

  1. $ sort file1 | sponge file1

那么,让我们检查一下文件内容是否已经按照字母顺序排序:

  1. $ cat file1
  2. I
  3. Me
  4. Us
  5. We
  6. You

看到了吧?并不需要创建新文件。在脚本编程中,这非常有用。另一个好消息是,如果待写入的文件已经存在,sponge 会保持其权限信息permissions不变。

ts 实用程序

正如名称所示,ts 命令在每一行输出的行首增加时间戳timestamp

查看如下命令的输出:

  1. $ ping -c 2 localhost
  2. PING localhost(localhost.localdomain (::1)) 56 data bytes
  3. 64 bytes from localhost.localdomain (::1): icmp_seq=1 ttl=64 time=0.055 ms
  4. 64 bytes from localhost.localdomain (::1): icmp_seq=2 ttl=64 time=0.079 ms
  5.  
  6. --- localhost ping statistics ---
  7. 2 packets transmitted, 2 received, 0% packet loss, time 1018ms
  8. rtt min/avg/max/mdev = 0.055/0.067/0.079/0.012 ms

(编辑:ASP站长网)

网友评论
推荐文章
    热点阅读