linux中标准输出,linux中的标准输出和输入

===============1.有些人经常问我这个问题问题===========

经常在脚本里面看到这个    2>&1     表示什么意思啊?

==============2.理论==========================

在linux中,每个进程都会有三个文件,并且这三个文件会进行重定向处理:

/dev/stdin          ----->/proc/self/fd/0             //表示标准输入,即键盘输入

/dev/stdout        ----->/proc/self/fd/1     //表示标准输出,即显示屏,屏幕

/dev/stderr         ---->  /proc/self/fd/2           //表示标准错误输出,有些脚本运行时会报错,就会输入到这。

你看到的2>&1中的数字就是上面重定向后的数字。

0: 表示键盘输入

1:将信息输入到屏幕(一般linux命令都是默认为1)

2:将信息输入到错误输出

===================3.举个栗子====================

在终端中写一个sh文件

>>>>>>>>>>>>>>

$cat  demo.sh

#!/bash/bin

xxxx

date

<<<<<<<<<<<<<<

执行这个sh文件,并将输出到demo.log中

./demo.sh > demo.log

./demo.sh: line 2: xxxx: command not found

由于xxxx不是linux命令会报错,并且将错误信息输出到屏幕(标准输出),而date是linux

命令,会正确输出,并将正确的信息输出到demo.log文件中

cat demo.log

Sat Mar  5 09:49:11 HKT 2016

==============4.再回头看最开始的问题============

2>&1  意思就很明了了,就是讲执行linux命令时的错误信息也输出到屏幕上。

./demo.sh 2>&1

./demo.sh: line 2: xxxx: command not found

Sat Mar  5 09:57:09 HKT 2016

===============收工======================

linux中Shell标准输出错误 &gt&semi;&sol;dev&sol;null 2&gt&semi;&amp&semi;1 分析【转】

Shell中可能经常能看到:>/dev/null  2>&1 eg:sudo kill -9 `ps -elf |grep -v grep|grep $1|awk '{print ...

linux中的输入从定向和输出重定向

linux的标准的输入和输出为如下 我们在 linux中执行命令时,命令默认输出到console中,很多时候我们需要将命令输出到其他设备上如最常见的就文件中去,或者重文件中输入.那这时候就需要用到li ...

Linux中检索文件

1 , Use locate command It is a fast way to find the files location, but if a file just created ,it w ...

&lbrack;转&rsqb;linux shell数据重定向(输入重定向与输出重定向)详细分析

在了解重定向之前,我们先来看看linux 的文件描述符. linux文件描述符:可以理解为linux跟踪打开文件,而分配的一个数字,这个数字有点类似c语言操作文件时候的句柄,通过句柄就可以实现文件 ...

&lt&semi;实训&vert;第十一天&gt&semi;学习一下linux中的进程,文件查找,文件压缩与IO重定向

[root@localhost~]#序言 在今后的工作中,运维工程师每天的例行事务就是使用free -m,top,uptime,df -h...每天都要检查一下服务器,看看是否出现异常.那么今天我们就 ...

linux中socket的理解

对linux中socket的理解 一.socket 一般来说socket有一个别名也叫做套接字. socket起源于Unix,都可以用“打开open –> 读写write/read –> ...

Linux中exec命令相关

Linux中exec命令相关 exec和source都属于bash内部命令(builtins commands),在bash下输入man exec或man source可以查看所有的内部命令信息. b ...

Linux中的15个&OpenCurlyQuote;echo’ 命令实例

echo是一种最常用的与广泛使用的内置于Linux的bash和C shell的命令,通常用在脚本语言和批处理文件中来在标准输出或者文件中显示一行文本或者字符串. echo命令的语法是: echo [选 ...

随机推荐

JSP里面ajax不能返回后台传出的值得问题。。。。

问题代码:

&lt ...

在Openfire中使用自己的数据表之修改系统属性

通过修改Openfire安装目录的conf/openfire目录下是openfire.xml文件可以使用我们自定义的认证集成以及用户数据集成.其实仔细观察之后,在修改完配置文件再次启动openfire ...

Foundation&colon; NSNotificationCenter

一个NSNotificationCenter对象(通知中心)提供了在程序中广播消息的机制,它实质上就是一个通知分发表.这个分发表负责维护为各个通知注册的观察者,并在通知到达时,去查找相应的观察者,将通 ...

asp&period;net能不托管吗&quest;

弱弱地问一句,整个部署在IIS中的asp.net项目能不托管吗? 或者说有没有用纯粹的非托管语言(比方说C语言)写的非托管asp.net项目?

Python核心编程读笔 2

第三章 python基础 一.语句和语法 \n 标准的行分隔符 \ 继续上一行 ; 将两个语句连接在一行 : 分开代码块的头和体 代码块以缩进块的形式体现 python文件以模块的形式组织 二.变量赋 ...

同台电脑部署多组Tomcat负载均衡(或集群)

可能这种需求比较少见,不过如果手上服务器不够用.可以考虑先这么干着.. 具体Tomcat怎么搭集群,就不在这细说了.只写同台电脑部署多组集群需要修改和注意的地方. 一.Apache 先是Apache, ...

Python使用ctypes访问C代码

工具:CodeBlocks 新建一个分享库工程( Shared library ),随便编写一个C代码的函数 // test.c #include int fib(in ...

51nod&lowbar;1298&colon;圆与三角形(计算几何)

题目链接 判断圆和三角形是否相交   可以转化为   判断三条线段是否和圆相交 #include #include #include< ...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux系统标准输入(stdin)、标准输出(stdout)和标准错误(stderr)是三个常用的输入输出设备。 标准输入设备(stdin)是用于接收用户输入的设备。在Linux终端,通常使用键盘作为标准输入设备。用户可以通过向程序提供输入数据,与程序进行交互。比如,当我们在终端输入命令时,输入内容就是通过标准输入设备传递给程序的。 标准输出设备(stdout)是用于向用户显示输出信息的设备。在Linux终端,默认情况下,标准输出设备就是终端屏幕。程序通过调用输出函数,将需要显示的信息发送到标准输出设备上。例如,我们在终端执行一个命令时,命令的输出结果就会显示在标准输出设备上。 标准错误设备(stderr)用于输出错误信息。和标准输出设备类似,标准错误设备默认情况下也是终端屏幕。程序可以通过将错误信息发送到标准错误设备上,通知用户当前程序执行遇到了错误或异常。与标准输出不同的是,标准错误的输出可以与标准输出分开。可以将标准输出保存到文件,并将标准错误信息显示在终端上,或者将标准错误重定向到另外一个文件。 使用这些标准输入输出设备,可以使程序与用户进行交互,接收输入数据,展示输出结果,并及时通知用户错误信息。同时,通过将标准输出标准错误输出重定向到不同的位置,可以方便地进行日志记录和错误排查。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值