数据流重定向
数据流可以分为2种:
输入数据流:以写文件为例,从键盘输入的字符就输入数据流
输出数据流:以读文件为例,将文件内容显示到屏幕上,显示的内容就是输出字符流
数量流重定向就是指改变数据流输入的方式或输出的介质。比如,输入数据流可以是一个文件的内容,输出数据流介质可以是文件而不单单的屏幕
对于命令行来说输入数据流主要来自键盘,输出数据流只要介质是屏幕。
同时输出数据流又可分为:
Ø 正确输出
Ø 错误输出
语法:
输入数据流:使用<(覆盖)或<<(累加)
正确输出数据流:使用>(覆盖)或>>(累加)
错误输出数据流:使用2>(覆盖)或2>>(累加)
说明:如果某些信息不想显示到屏幕上也不保存到文件或设备上,可以讲输出数据流指向/dev/null
举例1:正确输出数据流(覆盖)
[root@localhost ~]# ll > ll.file [root@localhost ~]# vim ll.file 总计 225968 -rw------- 1 root root 1377 02-14 10:29 anaconda-ks.cfg -rw-r--r-- 1 root root 207 03-05 11:00 bashrc-back ……..
举例2:正确输出数据流(累加)
[root@localhost ~]# ll /root >> ll.file 总计 225968 -rw------- 1 root root 1377 02-14 10:29 anaconda-ks.cfg -rw-r--r-- 1 root root 207 03-05 11:00 bashrc-back …….. 总计 225972 -rw------- 1 root root 1377 02-14 10:29 anaconda-ks.cfg -rw-r--r-- 1 root root 207 03-05 11:00 bashrc-back ……..
举例3:正确输出与错误输出数据流
[root@localhost ~]# ll /root /root/error ls: /root/error: 没有那个文件或目录 =>错误信息 /root: =>正确信息 总计 225972 -rw------- 1 root root 1377 02-14 10:29 anaconda-ks.cfg -rw-r--r-- 1 root root 207 03-05 11:00 bashrc-back ……………….. [root@localhost ~]# ll /root /root/error >right.list 2>error.list [root@localhost ~]# cat right.list /root: 总计 225984 -rw------- 1 root root 1377 02-14 10:29 anaconda-ks.cfg -rw-r--r-- 1 root root 207 03-05 11:00 bashrc-back …………….. [root@localhost ~]# cat error.list ls: /root/error: 没有那个文件或目录
举例4:正确与错误输出数据流写在一个文件中
[root@localhost ~]# ll /root /root/error >all.list 2>&1 [root@localhost ~]# cat all.list ls: /root/error: 没有那个文件或目录 /root: 总计 225996 -rw-r--r-- 1 root root 45 03-05 13:02 all.list -rw------- 1 root root 1377 02-14 10:29 anaconda-ks.cfg ………………..
命令执行的判断依据(; && ||)
语法:
cmd;cmd:不考虑命令相关性连续额的命令执行
cmd1&& cmd2:若cmd1执行完毕且正确,则执行cmd2
若cmd1执行错误则不执行cmd2
cmd1|| cmd2:若cmd1执行完毕且正确,则不执行cmd2
若cmd1执行完毕且为错误,则执行cmd2
相关推荐
Linux重定向是通过特殊的文件...通过以上知识点,我们可以发现Linux重定向不仅是一种控制数据流的方法,更是Linux系统管理与自动化任务中不可或缺的技术之一。掌握好这一技能,对于高效地管理和运维Linux系统尤为重要。
### Shell学习笔记 #### Shell的发展与分类 Shell作为Unix及类Unix系统(包括Linux)的主要用户界面之一,其历史可以追溯到20世纪70年代。最初,Shell仅仅作为一个简单的命令解释器,随着时间的推移,它发展成为了...
- **管道功能**:连接多个命令,实现复杂的数据流处理。 - **重定向功能**:将命令的输出或输入重定向到文件或其他命令。 **三、Shell 变量** - **环境变量**:全局有效,可在多个 Shell 实例间共享。 - **局部...
这两个强大的文本处理工具常与Shell配合使用,awk用于处理结构化的数据,sed则擅长流编辑,对文本进行查找替换等操作。 通过阅读《LINUX与UNIX SHELL编程指南》,我们可以深入了解Shell编程的精髓,提升自动化任务...
### Linux初、中级学习者教程知识点汇总 #### 一、Linux桌面系统提速法宝 - **选择最轻量级的窗口管理器或桌面环境**:为了提高Linux系统的响应速度,可以选择如XFCE、LXDE这样的轻量级桌面环境,它们占用资源较少...
### Linux学习基础知识版 (2) 知识点详解 #### 服务器简单介绍 - **服务器定义**:服务器是指在网络环境中能够提供数据存储、处理、通信等服务的高性能计算机。它们通常具有比普通个人电脑更高的计算能力和更稳定的...
- **管道与重定向**:掌握如何使用管道`|`连接命令,以及重定向`>`、`、`>>`操作,实现数据流控制。 - **脚本编写**:学习编写简单的Shell脚本,例如创建自动备份、日志处理等实用工具。 - **Shell函数和别名**:...
重定向是一种在计算机程序中改变数据流方向的技术。在Linux中,重定向通常用于改变命令的标准输入、标准输出以及标准错误输出的流向。这使得用户能够将命令的输出保存到文件中,或者将错误信息分离出来单独处理等。 ...
### 运维技术课程 Linux学习教程 Shell编程-1 #### 一、Shell编程基础 **1.1 Shell的作用和历史** - **作用**: Shell作为用户与Linux操作系统之间的接口,主要承担着命令解释器的角色,即用户通过Shell输入命令,...
#### 十六、数据流重定向 这部分内容未完全给出,但可以推测会涵盖输入输出重定向的基础概念,如标准输入(`stdin`)、标准输出(`stdout`)和标准错误(`stderr`)的重定向方法,以及如何使用重定向符(`, `>`, `>>`)来...
在Shell中,重定向是一项强大的功能,能够改变命令的输入源和输出目标,使得我们能够更加灵活地控制数据流。本文将详细介绍Linux基础Shell重定向的基本概念、用法及实例。 一、标准输入、标准输出与标准错误输出 ...
{1.13}Linux命令}{41}{section.1.13} {1.13.1}基本查看、移动}{41}{subsection.1.13.1} {1.13.2}权限}{42}{subsection.1.13.2} {1.13.3}打包备份与恢复}{42}{subsection.1.13.3} {1.13.3.1}\texttt {tar},\text...
### Linux系统学习笔记 #### 一、Linux系统Shell介绍 1. **Linux系统Shell类型**:Linux系统提供了多种Shell供用户选择,常见的包括Bourne shell (`sh`), C shell (`csh`), Korn shell (`ksh`)等。其中,`sh`是Unix...
- **数据流重定向**:改变命令的输入输出流,如重定向输出到文件,或从文件中读取输入。 - **命令运行的判断依据**:分号、逻辑与`&&`、逻辑或`||`用于组合命令,控制执行顺序。 6. **管线命令 (pipe)** - **...
例如,在Unix/Linux shell中,`符号用于输入重定向,如 `program 将使程序从 `input.txt` 文件读取数据。 2. **输出重定向**:改变程序的标准输出目标,通常是写入文件而非显示器。这使用 `>` 符号实现,如 `...
首先,我们要理解Linux中的数据流概念。系统中有三个主要的数据流:标准输入(stdin),通常来自键盘;标准输出(stdout),用于显示结果;标准错误(stderr),用于显示程序运行时的错误信息。在Linux中,它们都...
3. **设置管道、重定向和后台处理**:允许数据流在命令间传递,或改变输入/输出流的方向,以及在后台运行命令。 4. **处理信号**:响应系统信号,如SIGINT(中断)和SIGTERM(终止)。 5. **设置程序执行**:准备并...
在Linux中,Shell不仅是一个命令执行环境,它还提供了丰富的功能,如变量设定、数据流重定向、命令别名、历史命令记录等。 1. **硬件、核心与 Shell** 在计算机系统中,硬件执行实际的物理操作,而内核(Kernel)...
17. **管道(|)** 和 **重定向(>)** - 数据流处理 管道符`|`可以将一个命令的输出作为另一个命令的输入,重定向`>`则可以把命令的输出保存到文件中。 通过学习和实践这些命令,你将能更有效地在Linux环境中工作...
### Linux Shell Sed 学习笔记:深入理解与实践 #### Sed 概览 Sed(Stream Editor)是一种功能强大的文本处理工具,适用于Unix/Linux环境下的流编辑操作。它能够读取输入流(如文件或标准输入),进行模式匹配、...