形如以下命令
nohup java -jar upgrade.jar >/dev/null 2>&1 &
关于nohup命令和最后的&,请参阅我的其它博客讲解
java -jar upgreade.jar表示运行jar文件包程序
这里只讲下中间部分 >/dev/null 2>&1 含义,分解为以下四步讲解。
一、最开始的>号代表重定向到哪里,例如以下命令
ls >1.txt
我们知道执行ls命令默认在屏幕上输出,但是上面命令执行后,不会在屏幕上输出,而是会输出在1.txt文件中。
其内容就是ls原先在屏幕的输出,自己可以到linux下试下便知。
二、/dev/null代表空设备文件,被定向到这里的输出将什么也不显示
三、2> 代表标准错误输出重定向 1>代表标准输出重定向
四、&1 代表标准输出。相应的&2代表标准错误
想下2>1代表什么?2与>结合代表错误重定向,而单独的1则代表错误重定向到文件1,而不是代表标准输出
特别说明:系统默认输出是1,即标准输出,所以 >/dev/null 等同于 1>/dev/null
总结如下:
将上面讲解联系起来,命令>/dev/null 2>&1代表含义如下:
标准输出被重定向到空的设备文件,即不显示,标准错误输出被重定向到标准输出,而标准输出已被重定向到空的设备文件,所以标准错误输出也不显示。
以上命令在shell脚本中使用较多,通过跟在其它命令后面,达到命令执行时什么也不显示的目的。
版权声明:本文为博主原创文章,未经博主允许不得转载。
分享到:
相关推荐
在Shell脚本编程中,`>/dev/null 2>&1` 是一个常见的命令行操作,它的目的是将命令的输出(包括标准输出和标准错误)都重定向到一个特殊的地方——`/dev/null`,通常被称为“黑洞”或者“空设备文件”。这个文件的...
总结来说,`nohup` 命令与重定向操作符的组合,如 `nohup command > /dev/null 2>&1 &`,是 Linux 系统中常用的技术,用于在后台运行进程并丢弃所有输出,以确保进程的持续运行不受用户交互的影响。理解这些基本概念...
在Shell脚本中,我们经常会遇到`>/dev/null 2>&1`这样的重定向操作,它是用来处理命令的输出和错误的。接下来,我们将详细解释这个命令的含义和作用。 首先,`>/dev/null`是将标准输出(标准输出的文件描述符为1)...
- `2>&1` 表示将错误输出(2)重定向到标准输出(1),这样错误信息也会被输出到屏幕或指定的文件。 - `&> filename` 是一个简化的形式,它同时将标准输出和错误输出都重定向到`filename`。 4. **输出打印不显示*...
linux shell 中”2>&1″的含义 脚本: nohup /mnt/Nand3/H2000G >/dev/null 2>&1 & 对于& 1 更准确的说应该是文件描述符 1,而1 一般代表的就是STDOUT_FILENO,实际上这个操作就是一个dup2(2)调用.他标准输出到all_...
例如:`05 01 * * 1 sh /data/nginx_log/ftp_nginxlog.sh >/dev/null 2>&1`,这条命令将在每星期一的一点五分执行。 2.1 Cron 命令的基本格式 Cron 命令的基本格式为:`* * * * * command >/dev/null 2>&1`,其中第...
"人性化解析shell脚本,快速入门sh、... "1") happy_2 2>/dev/null ;; "2") happy_3 2>/dev/null ;; *) exit 0 ;; esac done ``` 通过这些示例,读者可以快速入门Shell脚本,并了解基本的Shell脚本语法和使用方法。
如果想同时忽略标准输出和错误输出,可以使用`2>/dev/null >/dev/null`。 此外,`/dev/null`还可以用来清空日志文件,如示例中的`/var/log/wtmp`和`/var/log/messages`。`/dev/null`的另一个应用是阻止程序产生的...
在 Linux 系统中,`/dev/null` 和 `/dev/tty` 都是特殊的设备文件,它们具有不同的用途和特性。 - **`/dev/null`**:通常用于丢弃不需要的数据或重定向不需要的输出。 - **`/dev/tty`**:代表当前终端(或终端仿真...
/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...
" 2>/dev/null |egrep -v "Database|information_schema|mysql|performance_schema|sys")` `for DB in $DB_LIST; do` `BACKUP_NAME=$BACKUP_DIR/${DB}_${DATE}.sql` `if ! mysqldump -h$HOST -u$USER -p$PASS -B $DB...
10 0 * * * /opt/soft/log/del-30-days-ago-log.sh > /dev/null 2>&1 该定时任务将在每天凌晨 0 点 10 分执行 del-30-days-ago-log.sh 文件,以删除 30 天前的日志文件。 在实际应用中,crontab 定时任务又很大的...
从DB中取检索值传递给shell,生成环境变量 1. 编写myshellpara.sql 通过spool 执行一个SQL读取所要的值,结果保存在myshellvar_export.sh set feedback off; set heading off; set pagesize 0; set linesize 1000; ...
- `&>/dev/null`可以用来丢弃命令的输出,例如`ping xxx -c3 &>/dev/null`将ping的结果丢弃。 - `echo $?`会返回上一个命令的退出状态,0表示成功,非0表示失败。 以上就是Linux基础命令的一些重要知识点,理解和...
/bin/shcd /var/log/httpd/cat access_log|awk ‘{print $1}’|sort|uniq -c|sort -n -r|head -n 20 > acp /dev/null access_logcp /dev/null error_logcp /dev/null limit.shcp /dev/null c#awk ‘{print $2}’ a|...
* 彻底解决:在cron的自动执行语句后加上> /dev/null 2>&1。 4. find文件耗资源 问题描述:有一段时间,在tmp目录下有大量包含picture_*的临时文件,每天凌晨2:30对一天前的文件进行清理。 解决方法: * 使用...
这里,`0 1 * * *` 表示每天的凌晨1点,`/path/to/your/deletefile.sh` 是你的脚本路径,`> /dev/null 2>&1` 用于将脚本输出重定向到黑洞,避免填充日志文件。 请注意,自动删除文件可能涉及数据安全问题,务必确保...
" 2>/dev/null |egrep -v "Database|information_schema|mysql|performance_schema|sys") for DB in $DB_LIST; do BACKUP_NAME=$BACKUP_DIR/${DB}_${DATE}.sql if ! mysqldump -h$HOST -u$USER -p$PASS -B $DB > $...
6.echo $a|dd bs=1 count=8 2>/dev/null 二、按指定的字符串截取 1、第一种方法: ${varible##*string} 从左向右截取最后一个string后的字符串 ${varible#*string}从左向右截取第一个string后的字符串 ${varible%