在initramfs中使用perl重定向系统调用的输出

时间:2011-09-12 21:06:53

标签: linux perl system io-redirection

我有这个与initramfs一起运行的perl脚本。我遇到了一些我不明白的小问题,这些问题肯定与shell有关。我要问的具体问题是:

system("/sbin/e2fsck -f $dev");

system("/sbin/e2fsck -f $dev >/dev/null");

重定向到/ dev / null的失败。最终,我想抓住输出:

open IN, "/sbin/e2fsck -f $dev |";

但这也失败了。

这是答案:  e2fsck需要一个终端进行交互式修复。传递-y标志固定了。感谢。

1 个答案:

答案 0 :(得分:0)

是因为您的/bin/sh真的是/bin/dash吗? C.F. this discussion on bad-fd-numberthis fix,其中包含使用与dash兼容的语法的一些建议。