千家信息网

shell命令行如何实现输入与输出功能

发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,这篇文章将为大家详细讲解有关shell命令行如何实现输入与输出功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。标准输入/输出和重定向,Linux发行版Fedora
千家信息网最后更新 2026年11月04日shell命令行如何实现输入与输出功能

这篇文章将为大家详细讲解有关shell命令行如何实现输入与输出功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

标准输入/输出和重定向,Linux发行版Fedora Core Linux,而Red Hat公司原来Red Hat Linux的开发团队也将继续参与这一发行版本的开发工作。

标准输入与输出

我们知道,执行一个shell命令行时通常会自动打开三个标准文件,即标准输入文件(stdin),通常对应终端的键盘;标准输出文件(stdout)和标准错误输出文件(stderr),这两个文件都对应终端的屏幕。进程将从标准输入文件中得到输入数据,将正常输出数据输出到标准输出文件,而将错误信息送到标准错误文件中。
我们以cat命令为例,cat命令的功能是从shell命令行给出的文件中读取数据,并将这些数据直接送到标准输出。若使用如下命令:
$ cat config 将会把文件config的内容依次显示到屏幕上。但是,如果cat的shell命令行中没有参数,它就会从标准输入中读取数据,并将其送到标准输出。例如:
$ cat
Hello world
Hello world
Bye
Bye

用户输入的每一行都立刻被cat命令输出到屏幕上。另一个例子,命令sort按行读入文件正文(当shell命令行中没有给出文件名时,表示从标准输入读入),将其排序,并将结果送到标准输出。下面的例子是从标准输入读入一个采购单,并将其排序。
$ sort
bananas
carrots
apples
bananas
carrots

这时我们在屏幕上得到了已排序的采购单。直接使用标准输入/输出文件存在以下问题:输入数据从终端输入时,用户费了半天劲输入的数据只能用一次。下次再想用这些数据时就得重新输入。而且在终端上输入时,若输入有误修改起来不是很方便。输出到终端屏幕上的信息只能看不能动。我们无法对此输出作更多处理,如将输出作为另一命令的输入进行进一步的处理等。为了解决上述问题,Linux系统为输入、输出的传送引入了另外两种机制,即输入/输出重定向和管道。

输入重定向

输入重定向是指把命令(或可执行程序)的标准输入重定向到指定的文件中。也就是说,输入可以不来自键盘,而来自一个指定的文件。所以说,输入重定向主要用于改变一个命令的输入源,特别是改变那些需要大量输入的输入源。例如,命令wc统计指定文件包含的行数、单词数和字符数。如果仅在shell命令行上键入:

$wc

wc将等待用户告诉它统计什么,这时shell就好象死了一样,从键盘键入的所有文本都出现在屏幕上,但并没有什么结果,直至按下<ctrl+d>,wc才将命令结果写在屏幕上。如果给出一个文件名作为wc命令的参数,如下例所示,wc将返回该文件所包含的行数、单词数和字符数。

$ wc /etc/passwd
20 23 726 /etc/passwd 另一种把/etc/passwd文件内容传给wc命令的方法是重定向wc的输入。输入重定向的一般形式为:命令<文件名。可以用下面的命令把wc命令的输入重定向为/etc/passwd文件:
$ wc < /etc/passwd
20 23 726

另一种输入重定向称为here文档,它告诉shell当前命令的标准输入来自shell命令行。here文档的重定向操作符使用<<。它将一对分隔符(本例中用delim表示)之间的正文重定向输入给命令。下例将一对分隔符delim之间的正文作为wc命令的输入,统计出正文的行数、单词数和字符数。
$ wc<>this text forms the content
>of the here document,which
>continues until the end of
>text delimter
>delim

在<<操作符后面,任何字符都可以作为正文开始前的分隔符,本例中使用delim作为分隔符。here文档的正文一直延续到遇见另一个分隔符为止。第二个分隔符应出现在新行的开头。这时here文档的正文(不包括开始和结束的分隔符)将重新定向送给命令wc作为它的标准输入。
以上对shell命令行的使用。

关于"shell命令行如何实现输入与输出功能"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

输入 命令 文件 输出 标准 数据 分隔符 屏幕 正文 终端 字符 文档 并将 功能 内容 单词 文件名 更多 用户 篇文章 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技有限公司 互联网最新的科技有限公司 腾讯阿里互联网科技 北京互联网科技 互联网的科技创新 互联网科技论文 互联网高科技企业 哈尔滨新华互联网科技 互联网科技股午盘股票涨跌 欧洲十大科技互联网公司 昭通云南众福互联网科技有限公司 受益于互联网科技的高速发展 知域互联网科技有限公司大骗子 国大互联网教育科技有限公司工作 众安科技工业互联网合作 互联网科技实习生岗位 中国新注册互联网科技 科技互联网公司两年变化 数字互联网科技有限公司 长沙易易互联网科技有限公司 深圳市人人互联网科技有限公司 安徽鑫晟辉互联网科技 互联网科技宣传片 丰台科技园 互联网公司 互联网科技扶贫时间 高科技互联网发展前景如何 科技赋能视角下互联网保险发展 恒生互联网科技业指数调整周期 上海乐五互联网科技有限公司 互联网 科技节活动 微视频大赛
0