经过几次尝试和错误之后,我在远程计算机(feh)上安装了另一个图像查看器,设置为up,并再次尝试了该命令。
feh WARNING: /tmp/feh_stdin_ZwCjv7 - No Imlib2 loader for that file format
feh: No loadable images specified.
See 'man feh' for detailed usage information我认为这是导致ImageMagick的display爆发错误的原因。
display: no decode delegate for this image format `' @ error/constitute.c/ReadImage/501.根据https://superuser.com/a/1517417/1106777的说法,命令失败是因为我将display作为后台作业(&)启动。
如果进程是用
&启动的,那么shell实际上将从/dev/null重定向它的stdin,以避免任何读取尝试。
如果我删除了尾随的&,该命令将运行,没有任何问题,例如:
工作中
ssh beer@laika "DISPLAY=:0 feh -" < <(cat 1.jpeg)(也)工作
ssh beer@laika "DISPLAY=:0 display -" < <(cat 1.jpeg)如何将stdin发送到后台&作业?
发布于 2020-01-14 12:47:45
命令
display - && sleep 5 && wmctrl -r ImageMagick -e 0,254,600,800,560启动display命令,等待其退出,如果退出状态指示成功,则运行sleep 5 && wmctrl -r ImageMagick -e 0,254,600,800,560。
你可能想
display - & sleep 5 && wmctrl -r ImageMagick -e 0,254,600,800,560它在shell背景中启动display,然后立即继续使用其余的命令。
https://askubuntu.com/questions/1202860
复制相似问题