2和1的含义 &> 是重定向的意思,本来1和2都是默认定向于输出屏幕的(如果不指定的话),但是如果我们把程序挂在后台,标准输出和标准错误输出还是输出到屏幕上,会很影像我们使用,不符合预期,所以一般都会将二者重新定向于某个log文件或者null文件,这个时候就要使用这个shell命令 其余细节均在转载博客里 希望对后来人有...
执行>log后, 1--->log (1指向log) 执行2>&1后, 2--->1 (2指向1,而1指向log,因此2也指向了log)再来分析下nohup java -jar app.jar 2>&1 >log &本来1--->屏幕 (1指向屏幕) 执行2>&1后, 2--->1 (2指向1,而1指向屏幕,因此2也指向了屏幕) 执行>log后, 1--->log (1指向log,2还是指...
public static void main(String[] args) { System.out.println("out1"); System.err.println("error1"); } } javac编译后运行下面指令: java Htest 2>&1 > log 你会在终端上看到只输出了"error1",log文件中则只有"out1" 每次都写">log 2>&1"太麻烦,能简写吗? 有以下两种简写方式 &>log >&l...
2. command 2>&1 >file 这个命令中实现重定向的关键系统调用序列是: dup2(1,2) open(file) == 3 dup2(3,1) 可以考虑一下不同的dup2()调用序列会产生怎样的文件共享结构。请参考APUE 3.10, 3.12
比如有些人可能会这么想:2是标准错误输入,1是标准输出,>是重定向符号,那么"将标准错误输出重定向到标准输出"是不是就应该写成"2>1"就行了?是这样吗?如果是尝试过,你就知道2>1的写法其实是将标准错误输出重定向到名为"1"的文件里去了写成2&>1也是不可以的2为什么2>&1要放在后面考虑如下一条shell...
echo "hello" 1> t.log 关于2>&1的含义 关于输入/输出重定向本文就不细说了,不懂的可以参考这里:Shell:管道与重定向 含义:将标准错误输出重定向到标准输出 符号>&是一个整体,不可分开,分开后就不是上述含义了。 比如有些人可能会这么想:2是标准错误输入,1是标准输出,>是重定向符号,那么"将标准错误输出...
关于2>&1的含义 关于输入/输出重定向本文就不细说了,不懂的可以参考这里:Shell:管道与重定向 含义:将标准错误输出重定向到标准输出 符号>&是一个整体,不可分开,分开后就不是上述含义了。 比如有些人可能会这么想:2是标准错误输入,1是标准输出,>是重定向符号,那么"将标准错误输出重定向到标准输出"是不是就...
linuxshell中2>1的含义 linux shell 中"2>&1"的含义 脚本:nohup /mnt/Nand3/H2000G >/dev/null 2>&1 & 对于& 1 更准确的说应该是⽂件描述符 1,⽽1 ⼀般代表的就是STDOUT_FILENO,实际上这个操作就是⼀个dup2(2)调⽤.他标准输出到all_result ,然后复制标准输出到⽂件描述符2(STD...
本文给大家分享linux中常见的2>&1符号具体运用以及平时shell脚本中常见的>、>>、2>、2>>、<、<<等那些奇奇怪怪的符号,通过简单通俗的例子,让你真正搞懂shell。 一、linux中输入输出重定向知识回顾 linux系统中,通常是命令从你的终端接受输入并将所产生的输出发送回到你的终端。一个命令通常从一个叫标准输入的地...
dir > null 2>&1 os.system("/etc/init.d/winbind stop >/dev/null 2>&1") >/dev/null 将输出重定向到/dev/null,这是个空设备,也就是忽略其输出。 2>&1 是将错误输出到标准输出,如果在控制台调试,也就是屏幕上,方便调试。 【shell】输出重定向2>&1 ...