如何使用redirect和pipe道命令bash命令string?

我想用redirect和/或pipe道做一个bash命令string,并用它来显示命令string或执行命令string。 一个简单的命令没有redirect或pipe道工程,但一串命令与redirect或pipe道不。 例如,

command="echo 1" $command echo "$command" 

会显示

 1 echo 1 

然而,

 command="echo 1 | cat" $command echo "$command" 

会显示

 1 | cat echo 1 | cat 

但我想要

 1 echo 1 | cat 

类似的redirect,

 command="echo 1 | cat > 1.out" $command echo "$command" 

会显示

 1 | cat > 1.out echo 1 | cat > 1.out 

但我想要

 echo 1 | cat > 1.out 

用一个名为“1.out”的新文件,内容为1。

有没有办法实现我想要的?

如果你希望shell将字符串作为一个命令来计算,那就告诉它:

 eval "$command" echo "$command"