Linux Shell

Linux Shell

2>&1

linux中0、1、2是文件描述符

名称 代码 操作符 Java中
标准输入(stdin) 0 <或<< System.in
标准输出(stdout) 1 >,>>,1>或1>> System.out
标准错误输出(stderr) 2 2>或2>> System.error

2>&1含义:

  1. 将错误输出重定向到标准输出
  2. 符号>&是一个整体,不可分开
1. nohup java -jar xx.jar >log 2>&1 &
  1. 本来1指向屏幕输出
  2. 执行>log后,1指向log输出
  3. 执行2>&1后,2指向1、1指向log,因此2也指向log输出

每次都写>log 2>&1太麻烦,可以使用以下两种简写方式:

  1. &>log
  2. >&log

上边1式可以简写为

2. nohup java -jar xx.jar &>log &

你可能感兴趣的:(linuxshell)