shell输出重定向

在linux shell执行命令时,每个进程都和三个打开的文件相联系,并使用文件描述符来引用这些文件。由于文件描述符不容易记忆,shell同时也给出了相应的文件名。

  标准输入:0(缺省是键盘,为0时是文件或者其他命令的输出)

  标准输出:1(缺省是屏幕,为1时是文件)

  标准出错:2(缺省是屏幕,为2时是文件)

系统中实际上有12个文件描述符,可以任意使用文件描述符3到9.

文件重定向:改变程序运行的输入来源和输出地点

  Command > filename           #把标准输出重定向到一个新文件中

  Command >> filename         #把标准输出重定向到一个文件中(追加)

  Command > filename 2>&1         #把标准输出和错误一起重定向到一个文件中

  Command >> filename 2>&1       #把标准输出和错误一起重定向到一个文件(追加)

  Command  2>filename                #把标准错误重定向到一个文件中

  Command  2>>filename      #把标准输出重定向到一个文件中(追加)

  Command < filename                 #Command命令以filename文件作为标准输入

  Command << delimiter     #从标准输入中读入,知道遇到delimiter分界符

Command >&m                         #把标准输出重定向到文件描述符m中

Command < &-           #关闭标准输入

n<&- 表示将 n 号输入关闭

<&- 表示关闭标准输入(键盘)

n>&- 表示将 n 号输出关闭

>&- 表示将标准输出关闭

shell输出重定向,布布扣,bubuko.com

时间: 2024-10-28 11:38:24

shell输出重定向的相关文章

Linux Shell系列教程之(十六) Shell输入输出重定向

本文是Linux Shell系列教程的第(十六)篇,更多Linux Shell教程请看:Linux Shell系列教程 Shell中的输出和输入的重定向是在使用中经常用到的一个功能,非常实用,今天就为大家介绍下Shell输入输出重定向的相关知识. 一.Shell输入输出重定向概述 在了解重定向相关知识之前,我们先来看看Linux的文件描述符. Linux的文件描述符可以理解为linux跟踪打开文件,而分配的一个数字,这个数字有点类似c语言操作文件时候的句柄,通过句柄就可以实现文件的读写操作. 用

shell--10、Shell 输入/输出重定向

大多数 UNIX 系统命令从你的终端接受输入并将所产生的输出发送回到您的终端.一个命令通常从一个叫标准输入的地方读取输入,默认情况下,这恰好是你的终端.同样,一个命令通常将其输出写入到标准输出,默认情况下,这也是你的终端. 重定向命令列表如下: 命令 说明 command > file 将输出重定向到 file. command < file 将输入重定向到 file. command >> file 将输出以追加的方式重定向到 file. n > file 将文件描述符为

linux shell数据重定向(输入重定向与输出重定向)详细分析(转载)

本文为转载 原文链接 http://www.cnblogs.com/chengmo/archive/2010/10/20/1855805.html 在了解重定向之前,我们先来看看linux 的文件描述符. linux文件描述符:可以理解为linux跟踪打开文件,而分配的一个数字,这个数字有点类似c语言操作文件时候的句柄,通过句柄就可以实现文件的读写操作. 用户可以自定义文件描述符范围是:3-num,这个最大数字,跟用户的:ulimit –n 定义数字有关系,不能超过最大值. linux启动后,会

Shell 输入/输出重定向

大多数 UNIX 系统命令从你的终端接受输入并将所产生的输出发送回??到您的终端.命令通常从标准输入的地方读取输入,默认是终端.标准输出,默认情况下是终端. 重定向命令列表如下: 命令 说明 command > file 将输出重定向到 file. command < file 将输入重定向到 file. command >> file 将输出以追加的方式重定向到 file. n > file 将文件描述符为 n 的文件重定向到 file. n >> file 将

shell介绍,命令历史记录,命令和文件名自动补齐;通配符和输入\输出重定向

shell介绍 Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口.它接收用户输入的命令并把它送入内核去执行.在计算机硬件之间还有一层东西--系统内核.如果把计算机硬件比作一个人的躯体,那系统内核就是人的大脑.至于shell,把它比作人的五官似乎更贴切些.言归正传,用户直接面对的不是计算机硬件而是shell,用户把指令告诉shell,然后shell再传给系统内核,接着内核再去支配计算机硬件去执行各种操作.Bash (GNU Bourne-Again Shell) 是许多Linux

关于shell输入 输出重定向

一 下面是关于输入输出重定向的语法格式 二 概述输出输入重定向大于号> :表示输出重定向 (会覆盖原文件)小于号<:输入重定向 (如果你输入的是啥,那么就会显示输出的是啥,不会覆盖和追加到原文件里面)双大于号>>:(表示输出重定向,会在原文件的内容上追加内容) 三输出输入重定向的实际例子1.输出重定向说明:我们可以看出使用cat查看原文件的内容是"正在读安徒生",使用输出重定向后,查看原文件的内容变成"故事的小火柴".这足以说明使用输出重定向

Shell 错误输出重定向

转自:https://www.cnblogs.com/vijayfly/p/6234575.html shell将标准错误输出重定向到 其他地方 经常可以在一些脚本,尤其是在crontab调用时发现如下形式的命令调用: /tmp/test.sh > /tmp/test.log 2>&1 前半部分/tmp/test.sh > /tmp/test.log很容易理解,那么后面的2>&1是怎么回事呢? 要解释这个问题,还是得提到文件重定向.我们知道>和<是文件重

shell ——输入输出重定向

转自http://www.cnblogs.com/chengmo/archive/2010/10/20/1855805.html 在了解重定向之前,我们先来看看linux 的文件描述符. linux文件描述符:可以理解为linux跟踪打开文件,而分配的一个数字,这个数字有点类似c语言操作文件时候的句柄,通过句柄就可以实现文件的读写操作. 用户可以自定义文件描述符范围是:3-num,这个最大数字,跟用户的:ulimit –n 定义数字有关系,不能超过最大值. linux启动后,会默认打开3个文件描

linux shell数据重定向

linux shell下常用输入输出操作符是: 1.  标准输入   (stdin) :代码为 0 ,使用 < 或 << : /dev/stdin -> /proc/self/fd/0   0代表:/dev/stdin 2.  标准输出   (stdout):代码为 1 ,使用 > 或 >> : /dev/stdout -> /proc/self/fd/1  1代表:/dev/stdout3.  标准错误输出(stderr):代码为 2 ,使用 2>