寻找 Linux 应用程序或命令来使用 grep 和 sed 通过管道传输图像

问题描述 投票:0回答:4

我正在尝试在网站上自动查看图像。以下将成功下载所需的图像文件:

wget $(wget -O - myURL | grep myPattern | sed myScript)

当我尝试使用管道连接到 feh 时

wget -O - $(wget -O - myURL | grep myPattern | sed myScript) | feh

我明白了

Cannot write to `-' (Broken pipe).

wget -O - $(wget -O - myURL | grep myPattern | sed myScript)

将向标准输出输出大量乱码,我假设是图像文件,所以我的结论是 feh 无法从管道读取,并且查看手册页似乎表明这是真的。可以以某种方式解决这个问题还是我需要其他工具?如果我这样做,我会更喜欢尽可能小的工具。

我查看了一个与此略有相似的问题,Trouble with Pipeline through sed,但不确定这有多相似。我确实尝试了 sed 的 --unbuffered 选项,它不起作用,我不确定如果它起作用我会理解它。

linux image sed grep piping
4个回答
4
投票

ImageMagick 的

display
可以从 stdin 获取图像。


4
投票

语法:

-f, --filelist file

如果

file
"-"
feh
将从其标准输入中读取
filelist

所以:

feh -f-

2
投票

您是否尝试过跑步

feh -
而不是
feh


0
投票

如果您使用kitty术语(https://sw.kovidgoyal.net/kitty/)您可以使用

kitten icat < ~/my_image.png

查看帮助了解详情

# kitten --help        # general help
# kitten icat --help   # icat help

支持 kitty 图形协议的其他终端也可以执行此操作:https://sw.kovidgoyal.net/kitty/graphics-protocol/#terminal-graphics-protocol

© www.soinside.com 2019 - 2024. All rights reserved.