>表示覆盖
>>表示追加
二者默认是把标准输出作为源,也就是>等价于1> >>等价于1>>。
如果想要把错误输出重定向,那么需要2>或者2>>
如果想要把错误和标准定义到不同文件:
cmd 1>std.txt 2>err.txt
如果想要把错误定义到标准输出:
cmd 2>&1
这里的&是为了让shell把1解释为标准输出而不是一个名字为1的文件。
如果要把标准输出和错误都重定向到一个文件,可以:
cmd &>a.txt
这里的&表示全部的输出包括1和2
>表示覆盖
>>表示追加
二者默认是把标准输出作为源,也就是>等价于1> >>等价于1>>。
如果想要把错误输出重定向,那么需要2>或者2>>
如果想要把错误和标准定义到不同文件:
cmd 1>std.txt 2>err.txt
如果想要把错误定义到标准输出:
cmd 2>&1
这里的&是为了让shell把1解释为标准输出而不是一个名字为1的文件。
如果要把标准输出和错误都重定向到一个文件,可以:
cmd &>a.txt
这里的&表示全部的输出包括1和2