管道不读取我的分叉脚本

管道不读取我的分叉脚本

我有个问题。我修改了一个名为 '包装工' AAUR 助手为了架构Linux。当我申请时出现问题管道,带有进度条,没有显示我需要的所有信息。

这是我的分叉脚本从 packer 中,下一行从 AUR 安装程序

echo > /tmp/packer-url-tmp

packer-postinstallerf -S --noconfirm --noedit alchemy 
   tee /tmp/packer-url-tmp |
   stdbuf -oL sed '/\.\.\.$/ s/^/#/p' |
   zenity --progress --title="packer progress" --pulsate --width=450 --auto-close

没有管道和进度条的输出:

http://pastebin.com/m0srNWkJ

上面的行,在没有 AUR 包的情况下工作正常;但是当我安装一个尿素尿率程序会消失以前的安装信息(构建过程)。

我不明白带有进度条的管道应该显示此信息。

仅显示管道

:: ¿Continuar con la instalación? [S/n]
(1/1) verificando llaves en el llavero             [######################] 100%
(1/1) verificando la integridad de los paquetes    [######################] 100%
(1/1) cargando los archivos del paquete...         [######################] 100%
(1/1) verificando conflictos entre archivos        [######################] 100%
(1/1) verificando el espacio disponible en disco   [######################] 100%
(1/1) instalando alchemy                           [######################] 100%
Dependencias opcionales para alchemy
    jpen: for tablet support

如果我的问题不清楚,我更新了我的问题。我不知道如何进一步澄清我的问题:/。

答案1

也许是因为它在 stderr 和 stdout 上输出文本,而您想要捕获的内容在 stderr 上?我认为你这里缺少管道

packer-postinstallerf -S --noconfirm --noedit alchemy | ...

并尝试将 stderr 重定向到管道之前的 stdout:

packer-postinstallerf -S --noconfirm --noedit alchemy 2>&1 | ...

抱歉,之前的链接仅回答,参考资料在这里:https://stackoverflow.com/questions/16497317/piping-both-stdout-and-stderr-in-bash

相关内容