Shell 脚本成长笔记

Shell 输入和输出(一):标准输入

2017-05-17  本文已影响19人  赵者也

几乎所有的命令都会产生到屏幕的输出和从键盘获取输入,而在 Linux 系统中可以将输出发送到指定的文件,或从文件中读取输入。每一个 Shell 命令都有它自己的输入和输出。在一个命令执行之前,它的输入和输出可以使用由 Shell 解释的特殊标记重定向。例如,将 data 命令的输出发送到文件而不是屏幕。改变输入或输出的默认路径就叫做重定向。

在 Linux 中一切皆文件,所以你的硬件在 Linux 系统中同样地表示为文件。

上述 3 个数字是标准的 POSIX 字符,也称为文件描述符。每个 Linux 命令都会使用上述的流与用户或其他系统程序进行交互。

在 Shell 运行任何命令之前,它先尝试打开文件进行读取。如果打开文件失败,Shell 将以一个错误退出并不运行命令。如果打开文件成功,Shell 使用打开的文件的文件描述符作为命令的标准输入文件描述符。

标准输入具有如下特点:

操作符 “<” 是输入重定向操作符,其语法如下所示:

command < input_filename

比如,可以按照如下方式运行 cat 命令,在屏幕上显示 /etc/inittab 的内容:

cat < /etc/inittab
标准输入的数据流

利用标准输入,使用 sort 命令对一个文件的内容进行排序的方法如下所示:

sort < file_list

本文参考自 《Linux Shell命令行及脚本编程实例详解

上一篇下一篇

猜你喜欢

热点阅读