这是我正在做的一件简单的事情
echo "please enter a command"
read x
$x
checkexitstatus()
{...}
checkexit
status 是一个 ifloop 在其他地方创建只是为了检查退出状态
我想知道的是,当我运行 $x 时,有什么方法不会显示在屏幕上,我想知道是否可以不将输出重定向到文件
原文由 AkyJ 发布,翻译遵循 CC BY-SA 4.0 许可协议
7 回答5.6k 阅读
4 回答4.2k 阅读
2 回答955 阅读✓ 已解决
2 回答3.5k 阅读
1 回答1.2k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
2 回答1.6k 阅读
您可以使用 Bash 重定向:
command 1> /.../path_to_file
=> 将标准输出重定向到 path_to_file。command > /.../path_to_file
是上一条命令的快捷方式。command 2> /.../path_to_file
=> 将 stderr 重定向到 path_to_file要同时对相同的输出执行这两项操作:
command >/.../path_to_file 2>&1
。2>&1
表示将2
(stderr) 重定向到1
(stdout 成为 path_to_file)。如果您不想检索命令的输出,可以将path_to_file
替换为/dev/null
。否则,您还可以存储命令的输出:
在此示例中,
command
的输出将存储在$var
中。