命令行星期二——第六部分
创始人
2024-03-01 13:11:07
0

不管怎样,让我们继续我们今天的日程吧:输入/输出重定向。

我们已经用过的大多数命令,都把他们的结果张贴到了终端显示中。然而,我们也可以让这些命令的显示放进一个文件、设备中,或者作为其它命令的输入,一切都在重定向

标准输出

那么,命令行程序主要是怎么工作的呢?它们会将命令的结果丢给一个叫做标准输出的设备,然后,标准输出会将这些结果发送到你的显示设备上,这样你就可以畅快地阅读这些信息了。然而,你也可以让命令的结果显示到一个文本文件中,像这样,用“>”字符(我的例子):

man zypper > man.txt

这儿我所干的是, 我想要获得zypper的一个帮助页。但是,我想要把它放到一个文本文件中去,因而我可以在我需要他们的时候(例如,在论坛、IRC寻求帮助时)很方便地读取这些结果。所以,这个命令做的是,保存man zypper输出结果到我的家目录中的man.txt,这样你可以看到,我可以用gedit来打开它:

如果我重复了该命令,或者使用不同的命令重定向到了同名文件,那么它就会被一次又一次地覆盖。所以,在那种情况下,如果我想要把输出结果重定向并附加到现存文件中,我唯一能做的事情就是下一次使用“»”来替换“>”。

标准输入

许多命令也可以接受来自称之为标准输入的设备的输入。默认情况下,输入来自键盘,然而也可以来自一个文件。要重定向它,使用跟前面相反的字符:‘<’。

请看下面的例子:

sort < man.txt

管道

要想把多个命令连接到一起,你可以使用管道。管道所要做的是,将一个命令的标准输出注入到另一个命令的标准输入。肖茨先生的最爱:

ls – l | less

通过使用‘| less’这个小把戏,你可以让任何命令滚动输出。 过滤器

过滤器

过滤器是管道中常用的程序。过滤器获取标准输入,对它进行操作,然后把结果发送到标准输出。它们可以以一种相当强大的方式处理信息。这儿提供了一个程序列表,大多数都是用作过滤器的。它们可以用于执行、查询,或者将帮助页重定向到它们,然后再重定向到一个文件!

过滤器:sort, uniq, grep (我们发现这一个东西遍布论坛,因此我建议大家深入研究一下), fmt, pr, head, tail, tr, sed, awk。

结束

我们只剩下几个课程来阐述CLI的基本用法了,到成熟期的时候,我希望大家都会对CLI兴趣会增多一点了,也希望大家在萧条期也进行一些探索!而在你们动手干的时候,我希望你们…… 玩得不亦乐乎!


via: https://news.opensuse.org/2014/07/30/command-line-somedays-part-six/

作者:Nenad Latinović 译者:GOLinux 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

相关内容

飞书 CLI 开源:AI ...
钛媒体App 3月28日消息,飞书官方在 GitHub 开源了命令...
2026-03-28 19:53:17
想提升你的Linux技能吗...
Nutyx是一款独特的Linux发行版,以其独立性和挑战性吸引了众...
2026-02-19 06:19:34
u盘里的文件突然不见了怎么...
这是(GZZDdata)整理的信息,希望能帮助到大家 当发现u盘里...
2026-01-29 17:18:27
微软发布winapp开源命...
微软昨日(1 月 22 日)发布博文,为简化 Windows 应用...
2026-01-23 17:19:23
文件碎片整理 WinCon...
WinContig 是一个用起来很方便的独立碎片整理工具。它有个很...
2026-01-20 18:24:04
基础Ubuntu网络代理的...
Ubuntu系统的网络代理配置是许多用户日常使用中的必备技能,从基...
2025-08-24 16:46:06

热门资讯

2020 年的 GitHub ... 距离 2020 年结束只剩下区区 24 天,我们即将结束魔幻的 2020 ,迎来新的一年,新的一年或...
开源新闻速递:openSUSE... 今日关注openSUSE 项目组的 Dominique Leuenberger 在他的周报中说:“这...
KDE4.11 Beta1 正...   KDE 项目工作组刚刚发布了 KDE Software Compilation 4.11 Bet...
Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
《Apex 英雄》正式可在 S... 《Apex 英雄》现已通过 Steam Deck 验证,这使其成为支持 Linux 的顶级多人游戏之...
使用时间序列数据,用开源工具助... InfluxData 是一个开源的时间序列数据库平台。下面介绍了它是如何被用于边缘应用案例的。收集到...
OpenWrt 21.02 发... OpenWrt 社区宣布了该发行版的最新稳定版本:OpenWrt 21.02。补充一句,OpenWr...
JStock:Linux 上不... 如果你在股票市场做投资,那么你可能非常清楚投资组合管理计划有多重要。管理投资组合的目标是依据你能承受...
硬核观察 #1249 LG 洗... #1 LG 洗衣机每天上传近 4GB 的数据?一个名为 Johnie 的 LG 洗衣机用户发现,他的...