编译文件时,若编译过程时间长,可以将  标准错误  重定向  输出到一个文件中   2 > 1.txt         也可以通过管道  重定向 到 标准输出    2 > &1 Linux shell的标准输入.输出和错误 标签: linux shellshell重定向 2013-08-19 20:42 30403人阅读 评论(0) 收藏 举报  分类: 系统运维(42)  版权声明:本文为博主原创文章,未经博主允许不得转载. 1.文件描述符 在linux shell执行命令时,每个…
1. 标准输入与输出 我们知道,执行一个shell命令行时通常会自动打开三个标准文件,即标准输入文件(stdin),通常对应终端的键盘:标准输出文件(stdout)和标准错误输出文件(stderr),这两个文件都对应终端的屏幕.进程将从标准输入文件中得到输入数据,将正常输出数据输出到标准输出文件,而将错误信息送到标准错误文件中. 我们以cat命令为例,cat命令的功能是从命令行给出的文件中读取数据,并将这些数据直接送到标准输出.若使用如下命令: $ cat config 将会把文件config的…
linux 环境中支持输入输出重定向,用符号<和>来表示. 0.1和2分别表示标准输入.标准输出和标准错误信息输出, 可以用来指定需要重定向的标准输入或输出,比如 2>a.txt 表示将错误信息输出到文件a.txt中. 同时,还可以在这三个标准输入输出之间实现重定向,比如将错误信息重定向到标准输出,可以用 2>&1来实现. Linux下还有一个特殊的文件/dev/null,它就像一个无底洞,所有重定向到它的信息都会消失得无影无踪.这一点非常有用,当我们不需要回显程序的所有信…
1.简单的命令行重定向问题. 例:ls  -al  test   test1  test2    1>out.txt  2>err.tx 这里ls这句命令行命令之后将标准输入重定向到out.txt中,标准错误重定向到err.txt中. 2.文件中临时重定向题 例:$  cat   test1 #!/bin/bash #!关于测试临时重定向问题 echo  "This is  an error!" >&2   #将这句话临时重定向为标准错误 echo  &quo…
shell http://baike.baidu.com/link?url=qN3THt5ZJhQtwRJJkakWdz5-vZp4V9H3OmNP97XNhaoL-dqU-6rrFrYfHXmYv60td49ZsVxDHF8lTwPC3zK_C8-nWCBgy8sRV_9uqqcczeu Linux Shell http://baike.baidu.com/link?url=2LxUhKzlh5xBUgQrS0JEc61xi761nvCS7SHJsa1U1SkVbw3CC869AoUCyKT0…
shell中可能经常能看到:1>/dev/null  2>&1  eg:sudo kill -9 `ps -elf |grep -v grep|grep $1|awk '{print $4}'` 1>/dev/null 2>/dev/null 命令的结果可以通过%>的形式来定义输出 /dev/null 代表空设备文件> 代表重定向到哪里,例如:echo "123" > /home/123.txt1 表示stdout标准输出,系统默认值是…
标准输入.输出和错误 当我们在shell中执行命令的时候,每个进程都和三个打开的文件相联系,并使用文件描述符来引用这些文件.由于文件描述符不容易记忆,shell同时也给出了相应的文件名.下面就是这些文件描述符及它们通常所对应的文件名: 文件文件描述符输入文件—标准输入0:它是命令的输入,缺省是键盘,也可以是文件或其他命令的输出.输出文件—标准输出1:它是命令的输出,缺省是屏幕,也可以是文件.错误输出文件—标准错误2:这是命令错误的输出,缺省是屏幕,同样也可以是文件. 系统中实际上有1 2个文件描…
Linux标准输入.输出和错误和文件重定向 专题 https://www.cnblogs.com/softidea/p/3965093.html 感觉自己对 这一块的理解一直不好 昨天同事给了一个 bat 文件也用到了标准输入 直接通过文件进行输入 脚本参数内容 比之前写脚本参数容易的多也规整的多 今天再看 linux的标准输入和标准输出 尤其是哪一句 >& 将错误输出 重定向到标准输出 自己竟然一直没有理解到 & 其实是地址符号的意思.. 这一块是在是太low了. 当我们在shel…
当我们在shell中执行命令的时候,每个进程都和三个打开的文件相联系,并使用文件描述符来引用这些文件.由于文件描述符不容易记忆,shell同时也给出了相应的文件名. 下面就是这些文件描述符及它们通常所对应的文件名: 文件文件描述符系统中实际上有12个文件描述符,但是正如我们在上表中所看到的, 0.1.2是标准输入.输出和错误.可以任意使用文件描述符3到9. 标准输入是文件描述符0.它是命令的输入,缺省是键盘,也可以是文件或其他命令的输出. 标准输出是文件描述符1.它是命令的输出,缺省是屏幕,也可…
  在了解重定向之前,我们先来看看linux 的文件描述符. linux文件描述符:可以理解为linux跟踪打开文件,而分配的一个数字,这个数字有点类似c语言操作文件时候的句柄,通过句柄就可以实现文件的读写操作. 用户可以自定义文件描述符范围是:3-num,这个最大数字,跟用户的:ulimit –n 定义数字有关系,不能超过最大值. linux启动后,会默认打开3个文件描述符,分别是:标准输入standard input 0,正确输出standard output 1,错误输出:error ou…
在做批量实验室,例如跑批量MR的作业,我们会写好shell脚本,然后启动脚本,等所有作业执行完再去看结果,但是这些执行时的信息如何保存下来到文件中呢?下面这个命令可以完成这个任务. sh batchjob.sh 2>&1 | tee mylog.log 其中sh batchjob.sh:表示要执行的shell脚步:0,1,2:在linux分别表示标准输入.标准输出和标准错误信息输出. 下面来总结下重定向问题. 输入输出重定向之:'<' and '>' '<' and '&g…
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/stdout 3. 标准错误输出(stderr):代码为 2 ,使用 2> 或 2>&g…
概述 在 Linux 中输入设备指的是键盘,输出设备指的是显示器.在 Linux 中,所有的内容都是文件,计算机硬件也是文件,标准输入设备(键盘)和标准输出设备(显示器)也是文件.这些设备的设备文件名如下表所示. 设 备 设备文件名 文件描述符 类 型 键盘 /dev/stdin 0 标准输入 显示器 /dev/stdout 1 标准输出 显示器 /dev/stderr 2 标准错误输出 Linux 是使用设备文件名来表示硬件的(比如 /dev/sda1 就代表第一块 SATA 硬盘的第一个主分…
shell是一个命令解释器,它在操作系统的最外层,负责直接与用户对话,把用户的输入解释给操作系统,并处理各种各样的操作系统的输出结果,输出到屏幕返回给用户.这种对话方式可以是交互的方式(从键盘输入命令,可以立即得到shell的回应),或非交互(执行脚本程序)的方式. 下图的黄色部分就是命令解释器shell处于的操作系统中位置形象图解. Linux SHELL 脚本 大量重复执行的工作            shell(Linux壳), 一类程序的名称            文本文件----->s…
本文是Linux Shell系列教程的第(七)篇,更多shell教程请看:Linux Shell系列教程 与其他语言一样,Shell中也有输出操作,而且在实际应用中也是非常重要的,今天就为大家介绍下Shell输出操作. Shell echo命令 echo命令是Shell的一个内部指令,用于在屏幕上打印出指定的字符串. 命令格式: echo arg 转义字符 像其他高级语言一样,Shell也使用反斜杠“\”作为转义字符. 例子: echo "\"It is a test\"&q…
by 程默 在了解重定向之前,我们先来看看linux 的文件描述符. linux文件描述符:可以理解为linux跟踪打开文件,而分配的一个数字,这个数字有点类似c语言操作文件时候的句柄,通过句柄就可以实现文件的读写操作. 用户可以自定义文件描述符范围是:3-num,这个最大数字,跟用户的:ulimit –n 定义数字有关系,不能超过最大值. linux启动后,会默认打开3个文件描述符,分别是:标准输入standard input 0,正确输出standard output 1,错误输出:erro…
本文是Linux Shell系列教程的第(十六)篇,更多Linux Shell教程请看:Linux Shell系列教程 Shell中的输出和输入的重定向是在使用中经常用到的一个功能,非常实用,今天就为大家介绍下Shell输入输出重定向的相关知识. 一.Shell输入输出重定向概述 在了解重定向相关知识之前,我们先来看看Linux的文件描述符. Linux的文件描述符可以理解为linux跟踪打开文件,而分配的一个数字,这个数字有点类似c语言操作文件时候的句柄,通过句柄就可以实现文件的读写操作. 用…
本文转载自:https://www.ibm.com/developerworks/cn/linux/l-cn-shell-debug/ Shell脚本调试技术 本文全面系统地介绍了shell脚本调试技术,包括使用echo, tee, trap等命令输出关键信息,跟踪变量的值,在脚本中植入调试钩子,使用“-n”选项进行shell脚本的语法检查, 使用“-x”选项实现shell脚本逐条语句的跟踪,巧妙地利用shell的内置变量增强“-x”选项的输出信息等.   一. 前言 shell编程在unix/…
来源:(linux shell)第一章--小试牛刀(上) 从今天開始,我们一起来学习<linux shell脚本攻略>这本书. 1.1简单介绍 shell脚本一般是一个以#!起始的文本文件,例如以下所看到的: #!/bin/bash 有两种运行shell脚本的方式,分别例如以下: sh script.sh 或者./script.sh 可是在运行脚本曾经,我们须要给脚本运行权限才行,不然脚本无法运行 chmod a+x script.sh 在命令中行中,假设须要同一时候运行多个命令,能够使用 c…
linux空设备文件和重定向 输出/输入重导向 >      >>   <   <<   :>   &>   2&>   2<>>&   >&2 文件描述符(File Descriptor),用一个数字(通常为0-9)来表示一个文件. 常用的文件描述符如下: 文件描述符          名称         常用缩写     默认值      0               标准输入      …
linux shell编程总结 本周学习了unix/linux shell编程,参考的是<LINUX与UNIX Shell 编程指南>,David Tansley著:徐焱,张春萌等译,由机械工业出版社出版的了,往内页那么一翻,都是2000年3月译的了,原书估计会更老,不过图书馆能找到合适于我这种初学者的也许就这么本了,将就着的吧. 这本书是以Bourne shell这个UNIX系统都支持的标准shell.Bourne Again shell(BASH).TCSH shell和Z shell它们…
Linux命令[注意:建议用UltraEdit打开] 一.文件处理命令 1.命令格式与目录处理命令 ls –a[查看隐藏文件] ls –l[查看文件信息长格式显示] ls –d[查看指定目录的详细信息] ls –h[显示容量大小] ls –i[查看任何文件的I 节点] ll 文件名[查看一个文件的详细信息] 2.目录处理命令 mkdir –p[递归创建目录] cd[切换指定目录] pwd[显示当前目录] rmdir[删除空目录] cp[复制文件到某个目录下] cp –r[复制目录] cp –p[…
Abstract: 1) Linux Shell 命令的标准输入.标准输出.标准错误,及其重定位: 2)Linux Shell 操作自定义文件描述符: 文件描述符是与文件相关联的一些整数,他们保持与已打开文件的关联.众所周知的文件描述符是标准输入stdin.标准输出stdout.标准错误stderr,我们可以重定位这些文件描述符关联文件的内容到另外一个文件文件描述符. 1. Linux Shell 命令的标准输入.标准输出.标准错误 当我们在编写 shell 脚本时,我们会非常频繁地操作执行命令…
由于工作的需要,越来越多的接触到linux系统.最近看了<Linux与Unix Shell>这本书,安装书的章节整理了一些自己认为比较重要的命令,方便以后查阅. No.001 文件安全与权限 1. umask 决定了新建文件的权限 2. 软链接(符号链接) ln -s source_path target_path No.002 find和xargs 1. find pathname -options [-print -exec -ok]    其中exec参数的命令格式: 'command-…
shell中默认有三个标准设备:标准输入(STDIN).标准输出(STDOUT).标准错误(STDERR). 在Linux系统中,一切(或几乎一切)都是文件.因此,标准输入的文件描述符是0,标准输出的文件描述符是1,标准错误的文件描述符是2. shell命令的输出默认显示在终端显示器上,示例如下: $ echo hello worldhello world 可以使用输出重定向符号把标准输出重定向到一个文件,示例如下: $ echo hello world > log.txt$ cat log.t…
在了解重定向之前,我们先来看看linux 的文件描述符. linux文件描述符:可以理解为linux跟踪打开文件,而分配的一个数字,这个数字有点类似c语言操作文件时候的句柄,通过句柄就可以实现文件的读写操作. 用户可以自定义文件描述符范围是:3-num,这个最大数字,跟用户的:ulimit –n 定义数字有关系,不能超过最大值. linux启动后,会默认打开3个文件描述符,分别是:标准输入standard input 0,正确输出standard output 1,错误输出:error outp…
linux中文件描述符 linux跟踪打开文件,而分配的一个数字,通过这个数字可以实现对文件的读写操作 用户可以自定义文件描述符范围是:3-max,max跟用户的ulimit –n 定义数字有关系,不能超过最大值 在执行shell命令时,会默认3个文件描述符,分别是: 0 :通常是标准输入(STDIN) 1 :是标准输出(STDOUT) 2 :是标准错误输出(STDERR) 执行shell命令中,会先有输入然后才会有输出.输入可以从键盘.文件中获得,命令执行成功后会将结果输出到系统默认的位置(默…
shell中可能经常能看到:echo log > /dev/null 2>&1 命令的结果可以通过%>的形式来定义输出 /dev/null :代表空设备文件>  :代表重定向到哪里,例如:echo "123" > /home/123.txt1  :表示stdout标准输出,系统默认值是1,所以">/dev/null"等同于"1>/dev/null"2  :表示stderr标准错误&  :表…
Linux shell基础知识(上) 目录 一.shell介绍 二.命令历史 三.命令补全和别名 四.通配符 五.输入输出重定向 六.管道符和作业控制 七.shell变量 八.环境变量配置文件 九.bashrc和bash_profile的区别 一.shell介绍 shell是一个命令解释器,提供用户和机器之间的交互.支持特定语法,如逻辑判断,循环等.每个用户都可以有自己的shell,centos7默认的shell为bash(Bourne Again Shell). Shell的两大家族 1.Bo…
1.查看进程的环境变量 普通:$cat /proc/1642/environ  换行:$cat /proc/1642/environ | tr '\0' '\n' tr的命令格式是tr SET1 SET2,凡是在SET1中的字符,都会被替换为SET2中相应位置上的字符. 2.SHELL脚本赋值与等于判断 赋值:$var=value 相等:$var  = value 在赋值时不要留有空格. 3.从进程名字得知进程ID $ pgrep my_proc  4.当前环境变量 $PATH 记住必须是大写…