`
mylose
  • 浏览: 8610 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

shell之“>/dev/null 2>&1” 详解

 
阅读更多

shell中可能经常能看到:>/dev/null  2>&1

命令的结果可以通过 %> 的形式来定义输出,其中 %> 代表文件描述符

我们将这个命令组合:“>/dev/null 2>&1”  拆为四部分来分析下:

1:首先 0> 表示stdin标准输入; 1> 表示stdout标准输出; 2> 表示stderr错误输出; 
2:符号 >  等价于 1> (系统默认为1,省略了先); 所以">/dev/null"等同于 "1>/dev/null"
3:/dev/null 代表空设备文件
4:& 可以理解为是"等同于"的意思,2>&1,即表示2的输出重定向等同于1
因此,>/dev/null 2>&1 也可以写成“1> /dev/null 2> &1”

那么本文标题的语句执行过程为:
1>/dev/null :首先表示标准输出重定向到空设备文件,也就是不输出任何信息到终端,说白了就是不显示任何信息。
2>&1 :接着,将标准错误输出重定向 到 标准输出,因为之前标准输出已经重定向到了空设备文件,所以标准错误输出也重定向到空设备文件。

分享到:
评论

相关推荐

    详解nohup /dev/null 2>&1 含义的使用

    在 `nohup /mnt/Nand3/H2000G >/dev/null 2>&1 &` 这个例子中,`>/dev/null` 表示将标准输出(文件描述符 1)重定向到 `/dev/null`,这是一个特殊的设备文件,任何写入它的数据都会被丢弃,相当于“黑洞”。`2>&1` ...

    详解shell中/dev/null 2&1到底是什么

    相信大家经常能在shell脚本中发现>/dev/null 2>&1这样的语句。以前的我并没有去深入地理解这段命令的作用,照搬照用,直到上周我将这段命令不小心写成了2>&1 >/dev/null,出了一点小问题之后,我才开始去了解这段...

    详解shell中>/dev/null 2>&1到底是什么

    在Shell脚本中,我们经常会遇到`>/dev/null 2>&1`这样的重定向操作,它是用来处理命令的输出和错误的。接下来,我们将详细解释这个命令的含义和作用。 首先,`>/dev/null`是将标准输出(标准输出的文件描述符为1)...

    linux-shell编程

    /bin/tar -cf /backup/$1.$DATE.tar $1 > /dev/null 2>> /backup/$1.bak.log /bin/gzip /backup/$1.$DATE.tar if [ $? -eq 0 ] then echo "$1 $DATE backup successfully" >> /backup/$1.bak.log else echo "ERROR...

    Linux Shell常用技巧

    ### Linux Shell 常用技巧详解 在 Linux 系统中,Shell 是用户与操作系统交互的主要方式之一。本文将深入探讨几个常用的 Shell 技巧及其应用场景。 #### 1. 使用 `/dev/null` 和 `/dev/tty` 在 Linux 系统中,`/...

    超级运维的109个shell脚本合集

    - `mysqldump -h$HOST -u$USER -p$PASS -B $DB > $BACKUP_NAME 2>/dev/null`:备份单个数据库到指定文件,忽略错误输出。 #### 多循环备份 - **脚本功能**:分别备份MySQL数据库中的每个数据库及其所有表到单独的...

    详解Shell编程之变量数值计算(二)

    expr $1 + 1 &>/dev/null if [ $? -ne 0 ] then echo 请输入数字 exit 1 fi if [ $# -ne 2 ] then echo 请输入两个数字 exit 1 fi echo a+b=$((a+b)) echo a-b=$((a-b)) echo a*b=$((a*b)) echo a/b=$((a/b)...

    Linux——shell编程基础

    - 示例:`find / -name test > /dev/null 2>&1` 的含义是搜索根目录下的名为 "test" 的文件,并将输出重定向到空设备文件 `/dev/null`,同时将错误输出也重定向到同一位置。 #### 五、Shell 变量管理 - **变量...

    Linux自动清理日志文件方法

    上述Cron表达式的含义是:每天凌晨1点执行`/opt/soft/bin/auto-del-30-days-ago-log.sh`脚本,其中`> /dev/null 2>&1`用于忽略脚本执行时产生的任何输出信息,确保不会发送邮件提醒。 通过这种方式,我们可以轻松...

    研究报告:find命令.ppt

    使用`2 >/dev/null`可以忽略错误信息,例如`find / -name access_log 2 >/dev/null`。 #### 3. 按尺寸查找 使用`-size`选项,如`find / -size 1500c`查找1500字节的文件,`+`表示大于,`-`表示小于。 #### 4. 按...

    LINUX_SHELL

    ### Linux Shell 编程知识点详解 #### 综述篇 **Shell是什么** - **定义**:Shell 是一种特殊的程序,充当用户与 Linux 或 Unix 操作系统内核之间的接口。它接收用户的输入,并将这些指令传递给操作系统的核心...

    linux shell循环:for、while、until用法详解

    ping -c 1 -W 1 10.1.250.$host &> /dev/null && { echo "10.1.250.$host is online" let online++ } || { let offline++ } done echo "Online hosts number : $online" echo "Offline hosts number : $...

    Shell执行/调用Java/Jar程序例子的实例详解

    if expr "$link" : '/.*' > /dev/null; then PRG="$link" else PRG=`dirname "${PRG}"`/"$link" fi done BASEDIR=`dirname ${PRG}` BASEDIR=`cd ${BASEDIR}/..;pwd` if test -z ${JAVA_HOME}; then JAVA_BIN...

    实用Linux命令行技巧

    - 示例:`11:07:16~/rails server 2>&1 > /dev/null &` - 启动Rails服务器,并将标准错误和标准输出合并后重定向到`/dev/null`,即丢弃输出。 3. **后台运行**: - 示例:`11:07:16~/rails server &>/dev/...

    daemontools控制脚本

    ps -ef | grep qmail | grep tcpserver | awk '{print $2}' | xargs kill > /dev/null 2>&1 killall qmail-send > /dev/null 2>&1 ``` 最后删除Qmail服务的锁文件。 ```sh if [-f /var/lock/subsys/qmail]; then ...

    制作linux服务看门狗

    - `> /dev/null`:将输出重定向到/dev/null,即丢弃输出。 - `if [ $? -ne 0 ]`:如果上一个命令的返回值不等于0,则执行以下命令。 - `service vrm start`:启动vrm服务。 - `date`:打印当前日期时间,这里...

    shell学习笔记.docx

    - 示例:`ls /nonexistent/directory > /dev/null` **脚本包含:** - 使用 `. filename` 或 `source filename` 命令可以在当前Shell脚本中包含另一个Shell脚本。 - 示例:`. /path/to/another_script.sh` #### ...

    linux常用shell脚本

    00 8-18/1 * * * cut -f1 /xyz/x1 >> /backup/bak01.txt ``` **示例3:** 每天5:50对`/data`目录进行压缩备份。 **脚本内容:** ```bash 50 5 * * * tar zcvf backup.tar.gz /data ``` **示例4:** 每天5:55卸载CD...

Global site tag (gtag.js) - Google Analytics