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

一套有用的Unix实用程序

发布时间:2018-09-01 04:06 所属栏目:117 来源:Sk
导读:9月15日技术沙龙 | 如何将智能化和运维工作相结合,实现智能运维! 我们都了解 GNU 核心实用程序 GNU Core Utilities ,所有类 Unix 操作系统都预装了它们。它们是 GNU 操作系统中与文件、Shell 和 文本处理相关的基础实用工具。GNU 核心实用程序包括很多日
9月15日技术沙龙 | 如何将智能化和运维工作相结合,实现智能运维!

一套有用的Unix实用程序

我们都了解 GNU 核心实用程序GNU Core Utilities,所有类 Unix 操作系统都预装了它们。它们是 GNU 操作系统中与文件、Shell 和 文本处理相关的基础实用工具。GNU 核心实用程序包括很多日常操作命令,例如 catlsrmmkdirrmdirtouchtailwc 等。除了这些实用程序,还有更多有用的实用程序没有预装在类 Unix 操作系统中,它们汇集起来构成了 moreutilis 这个日益增长的集合。moreutils 可以在 GNU/Linux 和包括 FreeBSD,openBSD 及 Mac OS 在内的多种 Unix 类型操作系统上安装。

截至到编写这份指南时, moreutils 提供如下实用程序:

  • chronic – 运行程序并忽略正常运行的输出
  • combine – 使用布尔操作合并文件的行
  • errno – 查询 errno 名称及描述
  • ifdata – 获取网络接口信息,无需解析 ifconfig 的结果
  • ifne – 在标准输入非空的情况下运行程序
  • isutf8 – 检查文件或标准输入是否采用 UTF-8 编码
  • lckdo – 带锁运行程序
  • mispipe – 使用管道连接两个命令,返回第一个命令的退出状态
  • parallel – 同时运行多个任务
  • pee – 将标准输入传递给多个管道
  • sponge – 整合标准输入并写入文件
  • ts – 为标准输入增加时间戳信息
  • vidir – 使用你默认的文本编辑器操作目录文件
  • vipe – 在管道中插入信息编辑
  • zrun – 自动解压并将其作为参数传递给命令

在 Linux 上安装 moreutils

由于 moreutils 已经被打包到多种 Linux 发行版中,你可以使用发行版对应的软件包管理器安装 moreutils

在 Arch Linux 或衍生的 Antergos 和 Manjaro Linux 上,运行如下命令安装 moreutils:

  1. $ sudo pacman -S moreutils

在 Fedora 上,运行:

  1. $ sudo dnf install moreutils

在 RHEL,CentOS 和 Scientific Linux 上,运行:

  1. $ sudo yum install epel-release
  2. $ sudo yum install moreutils

在 Debian,Ubuntu 和 Linux Mint 上,运行:

  1. $ sudo apt-get install moreutils

Moreutils – 打包更多有用的 Unix 实用程序

让我们看一下几个 moreutils 工具的用法细节。

combine 实用程序

正如 combine 名称所示,moreutils 中的这个实用程序可以使用包括 andnotorxor 在内的布尔操作,合并两个文件中的行。

  • and – 输出 file1file2 都包含的行。
  • not – 输出 file1 包含但 file2 不包含的行。
  • or – 输出 file1file2 包含的行。
  • xor – 输出仅被 file1file2 包含的行

下面举例说明,方便你理解该实用程序的功能。这里有两个文件,文件名分别为 file1file2,其内容如下:

  1. $ cat file1
  2. is
  3. was
  4. were
  5. where
  6. there
  7.  
  8. $ cat file2
  9. is
  10. were
  11. there

下面,我使用 and 布尔操作合并这两个文件。

  1. $ combine file1 and file2
  2. is
  3. were
  4. there

从上例的输出中可以看出,and 布尔操作只输出那些 file1file2 都包含的行;更具体的来说,命令输出为两个文件共有的行,即 is,were 和 there。

下面我们换成 not 操作,观察一下输出。

  1. $ combine file1 not file2
  2. was
  3. where

从上面的输出中可以看出,not 操作输出 file1 包含但 file2 不包含的行。

ifdata 实用程序

(编辑:ASP站长网)

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