LFCS 系列第一讲:如何在 Linux 上使用 GNU sed 等命(3)

#ls-l /etc |grep rc[0-9]

使用 grep 列出内容

使用 grep 列出内容

tr 命令使用技巧

tr 命令可以用来从标准输入中转换(改变)或者删除字符,并将结果写入到标准输出中。

样例

把 sortuniq.txt 文件中所有的小写改为大写。

#cat sortuniq.txt |tr[:lower:][:upper:]

排序文件中的字符串

排序文件中的字符串

压缩ls –l输出中的分隔符为一个空格。

#ls-l |tr-s ' '

压缩分隔符

压缩分隔符

cut 命令使用方法

cut 命令可以基于字节(-b选项)、字符(-c)或者字段(-f)提取部分输入(从标准输入或者文件中)并且将结果输出到标准输出。在最后一种情况下(基于字段),默认的字段分隔符是一个制表符,但可以由 -d 选项来指定不同的分隔符。

样例

从 /etc/passwd 中提取用户账户和他们被分配的默认 shell(-d 选项允许我们指定分界符,-f 选项指定那些字段将被提取)。

#cat/etc/passwd|cut-d:-f1,7

提取用户账户

提取用户账户

将以上命令结合起来,我们将使用 last 命令的输出中第一和第三个非空文件创建一个文本流。我们将使用 grep 作为第一过滤器来检查用户 gacanepa 的会话,然后将分隔符压缩至一个空格(tr -s ' ')。下一步,我们将使用 cut 来提取第一和第三个字段,最后使用第二个字段(本样例中,指的是IP地址)来排序之后,再用 uniq 去重。

#last|grep gacanepa |tr-s |cut-d-f1,3|sort-k2 |uniq

last 命令样例

last 命令样例

上面的命令显示了如何将多个命令和管道结合起来,以便根据我们的要求得到过滤后的数据。你也可以逐步地使用它以帮助你理解输出是如何从一个命令传输到下一个命令的(顺便说一句,这是一个非常好的学习经验!)

总结

尽管这个例子(以及在当前教程中的其他实例)第一眼看上去可能不是非常有用,但是他们是体验在 Linux 命令行中创建、编辑和操作文件的一个非常好的开始。请随时留下你的问题和意见——不胜感激!

参考链接

via:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/15436.html