【重定向】
时间:2006-01-06 来源:sunyone
这两天又翻了翻bash shell编程,顺便写几句……
文件描述符,也许底层的程序员才用的到,偶不是所以偶也不深入了解了
它是从0开始的整数
了解3个就可以了
0 标准输入(默认一般是键盘)
1 标准输出(默认一般是屏幕)
2 标准错误(默认一般是屏幕)
重定向
>| 把标准输出重定向并强制覆盖,相当于 1>|
< 把标准输入重定向(即从其它地方接受输入),相当于 <0
2> 把标准错误重定向
2>&1 把标准错误输出到与标准输出相同的地方
<<- 定义标准输入结束符并删除前导TAB(不删除空格)
比如:
把标准输出重定向到文件
echo "hello" > file.txt
把标准输出重定向到null,标准错误也输出到和标准输出相同的地方
command >/dev/null 2>&1
下面定义结束符为EOF,-使删除前导TAB,EOF不加引号$会引用变量,“EOF”$变量失效
a=111
cat > aa.txt <<-EOF
echo $a
EOF
cat > bb.txt <<-"EOF"
echo $a
EOF
文件描述符,也许底层的程序员才用的到,偶不是所以偶也不深入了解了
它是从0开始的整数
了解3个就可以了
0 标准输入(默认一般是键盘)
1 标准输出(默认一般是屏幕)
2 标准错误(默认一般是屏幕)
重定向
>| 把标准输出重定向并强制覆盖,相当于 1>|
< 把标准输入重定向(即从其它地方接受输入),相当于 <0
2> 把标准错误重定向
2>&1 把标准错误输出到与标准输出相同的地方
<<- 定义标准输入结束符并删除前导TAB(不删除空格)
比如:
把标准输出重定向到文件
echo "hello" > file.txt
把标准输出重定向到null,标准错误也输出到和标准输出相同的地方
command >/dev/null 2>&1
下面定义结束符为EOF,-使删除前导TAB,EOF不加引号$会引用变量,“EOF”$变量失效
a=111
cat > aa.txt <<-EOF
echo $a
EOF
cat > bb.txt <<-"EOF"
echo $a
EOF
相关阅读 更多 +