另一种在Bash中重定向输出的方法

时间:2016-07-31 10:51:07

标签: bash redirect output


在bash中,当我们想要读取文件时,我们使用cat命令
cat file.txt
但如果我们不想使用空格,我们可以输入:
{cat,file.txt}
有没有办法在不使用符号的情况下重定向输出>或者<或者&
我的意思是有一个等同于这个命令:
cat file.txt > /dev/null
谢谢。

3 个答案:

答案 0 :(得分:3)

| tee(称为pipe-T) - 将输出重定向(与>相同)到文件,但也在stdout打印:

cat file.txt|tee outfile.txt

| tee -a:将输出附加到文件(与>>相同),但也会在stdout上打印:

cat file.txt|tee -a outfile.txt

答案 1 :(得分:1)

我不明白你为什么要这样做,但你可以做到:

eval {cat,input} "$(echo _/dev/null | tr _ '\076')"

答案 2 :(得分:0)

除了tee您可以使用exec重定向输出

 exec 3>&1 # making file descriptor 3 to point to 1 where 1 is stdout
 exec 1>fileout #redirecting 1 ie stdout to a file
 {cat,file} # this goes to fileout & question requirement
 exec 1>&3 # restoring 1 to default
 {cat,38682813.c} # This will be printed at the stdout