Dre*_*mor 1 io-redirection shell-script
我正在构建一个 shell 脚本来自动配置具有最佳设置的特定计算机。我想隐藏这个脚本的所有输出,除了 echo 输出。是否可以?
使用以下命令启动您的脚本:
exec 3>&1 1>/dev/null 2>&1
Run Code Online (Sandbox Code Playgroud)
这会将标准输出的原始文件描述符保存到 &3,然后将标准输出和标准错误重定向到 /dev/null。每当您想打印某些内容时,将其输出重定向到 &3,例如:
echo "This message won't be output"
echo "But this one will" >&3
Run Code Online (Sandbox Code Playgroud)
如果你想隐藏那个细节,你可以定义一个与 fd 3 相呼应的函数:
say() {
echo >&3 "$@"
}
say "This goes to the log"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1731 次 |
| 最近记录: |