9月15日技术沙龙 | 如何将智能化和运维工作相结合,实现智能运维!
我们都了解 GNU 核心实用程序,所有类 Unix 操作系统都预装了它们。它们是 GNU 操作系统中与文件、Shell 和 文本处理相关的基础实用工具。GNU 核心实用程序包括很多日常操作命令,例如 cat 、ls 、rm 、mkdir 、rmdir 、touch 、tail 和 wc 等。除了这些实用程序,还有更多有用的实用程序没有预装在类 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 :
$ sudo pacman -S moreutils
在 Fedora 上,运行:
$ sudo dnf install moreutils
在 RHEL,CentOS 和 Scientific Linux 上,运行:
$ sudo yum install epel-release $ sudo yum install moreutils
在 Debian,Ubuntu 和 Linux Mint 上,运行:
$ sudo apt-get install moreutils
Moreutils – 打包更多有用的 Unix 实用程序
让我们看一下几个 moreutils 工具的用法细节。
combine 实用程序
正如 combine 名称所示,moreutils 中的这个实用程序可以使用包括 and ,not ,or 和 xor 在内的布尔操作,合并两个文件中的行。
and – 输出 file1 和 file2 都包含的行。
not – 输出 file1 包含但 file2 不包含的行。
or – 输出 file1 或 file2 包含的行。
xor – 输出仅被 file1 或 file2 包含的行
下面举例说明,方便你理解该实用程序的功能。这里有两个文件,文件名分别为 file1 和 file2 ,其内容如下:
$ cat file1 is was were where there -
$ cat file2 is were there
下面,我使用 and 布尔操作合并这两个文件。
$ combine file1 and file2 is were there
从上例的输出中可以看出,and 布尔操作只输出那些 file1 和 file2 都包含的行;更具体的来说,命令输出为两个文件共有的行,即 is,were 和 there。
下面我们换成 not 操作,观察一下输出。
$ combine file1 not file2 was where
从上面的输出中可以看出,not 操作输出 file1 包含但 file2 不包含的行。
ifdata 实用程序
(编辑:ASP站长网)
|