【发布时间】:2014-06-24 08:12:32
【问题描述】:
我正在创建一些 bash 脚本,在某些用例中我需要使 parted 命令静音。 this question 的回答无济于事。
这是我正在使用的一段代码:
parted -s $1 mklabel gpt &> /dev/null
无论输出重定向如何,这都是输出:
[root@localhost tmp]# parted -s /dev/sda mklabel gpt &> /dev/null
sda:
[root@localhost tmp]#
有什么方法,甚至是一个棘手的方法,可以让这个命令静音吗?
【问题讨论】:
-
“这个问题”后面的链接失效了
-
已更正。只是“重复”问题的链接:)
-
@Pierre 我不知道
parted是如何工作的。由于您已经重定向了 stdout 和 stderr,我认为可能发生这种情况的唯一方法是当输出(或错误)来自不属于parted本身的外壳时。你可以试试:{ parted -s $1 mklabel gpt &> /dev/null ; } &>/dev/null如果是这样的话。 -
@BlueMoon 感谢您的建议。不幸的是,结果是一样的。
-
@Pierre 其他原因可能是你的 shell 不支持
&>。所以你明确地重定向它们:parted -s $1 mklabel gpt 2>&1 > /dev/null或{ parted -s $1 mklabel gpt 2>&1 > /dev/null ; } 2>&1 >/dev/null