这是我复制并粘贴在一起的快速模型。我想这很酷而且有用。

已经存在这样的东西吗?



评论

我总是只用feh!我知道它不在终端中,但是确实可以。

终端不适用于图形,它只能显示unicode字符,并进行一些着色。最好的是ASCII艺术。

我喜欢将终端用于带itermplot的图形,不幸的是,仅适用于macOS。

这个问题是由自制啤酒中的啤酒形象引起的吗?那是一个表情符号。

如果您在尝试在Mac上查看它们的Ubuntu服务器上,则可以正常使用:unix.stackexchange.com/a/457076/7000

#1 楼

更新2018-12-31

很棒的终端仿真器小猫咪都有一个icat命令来显示图像(在tmux中不起作用)。 Kitty还可以在Ranger(终端文件管理器)中启用图像预览,这是我目前最常用的方法(在tmux中有效)。


1。 w3m

虽然w3m的主要目的是提供控制台内Web浏览,但它也可以用于在终端中查看图像。要安装的相关软件包是w3mw3m-img(至少在Ubuntu上)。然后,您需要通过传递-o ext_image_viewer=0或进入w3m内部的选项菜单('o')来禁用外部图像查看器,然后禁用外部图像查看。

现在,键入w3m <image_name>将在终奌站。 w3m将使用整个终端窗口,因此在退出w3m之前,您无法看到以前的命令(请考虑less,而不是cat)。请注意,如果图像过大以适合终端窗口,它将仍然在外部打开(对我来说是imagemagick)。还要注意,即使我阅读了多个地方,w3m内嵌图像都不能用于gnome-terminal,但对我来说很好。不得不输入两次q来关闭图像,然后关闭w3m,这有点烦人。

2。术语

tycatterminology的一部分,并且显示图像,例如cat显示文本文件,而imgcat则适用于OS X上的iTerm2。

3。 libsixel + mlterm / xterm

安装libsixel-bin和任何兼容的终端(在本自述文件的“要求”下提到的示例,例如,用正确的标志编译的mltermxterm,您可以使用img2sixel命令查看图像。这两个软件包都可以在Ubuntu仓库中找到。

4. FIM

然后是FIM,它是fbi的改进版本。主页指出,它不仅可以使用帧缓冲区显示图像,还可以使用X显示图像。但是,它不会为我安装。编辑我通过下载0.5中继版本,运行./configure --disable-exif然后从我的路径中临时删除anaconda(python分发版)使其运行,因为它在运行libpngmake之前引起了与sudo checkinstall的冲突(您需要使用checkinstall手动输入版本号,但是与make install相比,它更易于删除)。但是,图像仍然显示在单独的窗口中,尽管与fbi一样,您不需要运行X,这很酷。

5。 jupyter-qtconsole

您还可以发挥创意并将jupyter-qtconsole用作系统控制台,对其进行配置以内联显示图(%matplotlib inline),然后使用matplotlib =)显示图像

6。 feh

feh使用X来显示图像,但是feh -x在无边界窗口中弹出图像,可以使用qx快速关闭该窗口。尽管终端上没有显示图像,但我认为值得一提,因为这是到目前为止我发现的最少侵入性方式,直到gnome-terminal获得imgcat / tycat等效后,我才使用它。

评论


w3m正在使用caca-utils,因此最好直接使用它(cacaview e.jpg)

–user1133275
17年8月7日在18:11

易于安装libsixel-bin mlterm; mlterm; img2sixel test.jpg可在Ubuntu 19.10上使用!我也尝试过xterm,但是那里没有输出

–rubo77
19年11月4日在20:16



#2 楼

也许caca是您想要的。对于图像:

sudo apt-get install caca-utils
cacaview /PATH/TO/image.jpg


请确保您的终端窗口足够大。

例如,这是在cacaview中显示此图像的方式:



有时我会用它来在mplayer中以ASCII格式观看视频:)像这样:

mplayer -vo caca /PATH/TO/video.mpg


评论


很有帮助-来自caca-utils的命令应该在终端中内嵌显示图像是img2txt

–野生
14年7月18日在21:02

现在该领域有一个新的参与者:github.com/ichinaski/pxl ---在快速测试中,图片看起来比cacaview更好。 (我想添加一个新的答案,但该网站没有让我(?))

–user569825
16年6月25日在10:18

“以ASCII格式观看视频”但是...为什么?

–德里克·朕会功夫
17年7月21日在0:59

这将打开另一个窗口。 OP要求终端。我认为您应该建议img2txt。

– phil294
17-10-14在19:30



“以ASCII格式观看视频”但是...为什么?因为你想吗?因为您需要浏览视频,而唯一得到的是终端?因为如果您不需要某些东西,并不意味着其他人就会跟随。

– Marcin Orlowski
18-2-22在17:47

#3 楼

我编写了一个小型C ++工具,用于将图像转换为支持以下功能的现代终端的ANSI RGB控制代码和Unicode块图形字符:https://github.com/stefanhaustein/TerminalImageViewer

安装:

git clone https://github.com/stefanhaustein/TerminalImageViewer.git
cd TerminalImageViewer/src/main/cpp
make
sudo make install


用法:

tiv <image(s)>


编辑:更改了指向主存储库的链接/说明;

示例:



评论


这看起来非常好!但是它是Java还是C ++?

– Andrea Lazzarotto
17年7月9日在22:45

它曾经是Java,但是执行此简单任务需要JVM使我感到烦恼,因此我已将其移植到C ++(尽管屏幕截图仍显示了Java命令)

– Stefan Haustein
17年7月9日在22:52

比cacaview更好!

–Piotr Dabkowski
17年8月5日在17:10

这是一个了不起的工具。绝对慢,但比可卡好得多。使用“ 256位模式”时是否会有质量损失? (由于必须这样做,普通模式被弄乱了)

– phil294
17-10-14在19:53



很好的成绩!谢谢 !当没有x服务器可用时,对于ssh很有用!

– Arnaud De Broissia
18年6月21日在9:52



#4 楼

我做了一个非常快速,简单的单行外壳函数,它完全按照样机中的要求解决了原始问题。请注意,下面的截图是实际图像,而不是模型。

function lsix() { montage -tile 7x1 -label %f -background black -fill white "$@" gif:- | convert - -colors 16 sixel:-; }




前提条件是最小的:xterm和ImageMagick(apt-get install xterm imagemagick)。您的xterm必须处于vt340模式,可以在~/.Xresources中设置,也可以从命令行(xterm -ti vt340)设置。

限制:所有显示的图像仅使用16种颜色。这意味着,单独查看图像时可能看起来更好。 (见下文)。



UPDATE

尽管以上答案仍然正确,但我创建了一个更好的shell脚本,该脚本可以执行“将图像直接输入到终端。我添加了各种改进来使图像看起来更好(更多颜色,正确的Alpha,JPEG方向,处理大量图像,紧凑的瓷砖布局等)。它仍然是一个很小的程序,但是我认为人们可能想要对其进行自定义,因此我将其放在了github:https://github.com/hackerb9/lsix。

#5 楼

您不能在终端窗口中执行此操作,但是可以在Linux控制台中使用fbi进行操作。您需要一个帧缓冲区以使其工作:

sudo apt-get install fbi


转到Linux控制台(使用Ctrl + Alt + F1)并输入fbi <filename>

它应该显示您的图像。

评论


“终端”与“ tty”是什么意思?他们不是同一回事吗? askubuntu.com/questions/506510/…

–晚上
15年7月10日在13:11

没为我工作。但是“ caca”工具起作用了。使用“ DejaVu Sans Mono-16”,pixelize = 16.67 file = / usr / share / fonts / truetype / dejavu / DejaVuSansMono.ttf ioctl VT_GETSTATE:设备的ioctl不适当(不是Linux控制台?)

–Felipe
2015年11月9日在22:06

@Wernight Ctrl + Alt + F1 / F2 / F3在ubuntu下为您提供一个tty(Ctrl + Alt + F8返回)。

– joelostblom
15年11月14日在22:31

还有FIM,它是fbi的改进版本。主页指出,它不仅可以使用帧缓冲区显示图像,还可以使用X显示图像。但是,它不会为我安装。

– joelostblom
15年11月14日在22:32

好消息iTerm2 v3可以内联显示图像iterm2.com/images.html

– A B
16年1月20日在22:01



#6 楼

另一个替代方法是术语:

https://www.youtube.com/watch?feature=player_embedded&v=ibPziLRGvkg

您可以在Ubuntu上安装,方法是添加以下启示git存储库:

sudo add-apt-repository ppa:enlightenment-git/ppa
sudo apt-get update && sudo apt-get install terminology


或者在最新的Ubuntu版本> = Vivid(15.04)中,可以从官方存储库获取。 br />
要查看图像,请键入tycat IMAGENAME,要查看图像列表,请键入tyls -m

评论


tycat用于内联显示图像,而tyls -m用于在目录中显示中等大小的缩略图。

– joelostblom
15年11月14日在21:01

sudo add-apt-repository ppa:hannes-janetzek / enlightenment-svn不起作用

– Gucho Ca
16 Jan 20'0:48



我已经更新了答案,以指出最近的启蒙运动PPA

–哈维尔·洛佩斯(JavierLópez)
16年1月20日在1:54

@chilicuil术语在官方Ubuntu库中,不需要PPA。

–猫
16年1月20日在5:48

@cat最初的答案是在生动的发布之前编写的,当时该术语不可用,启蒙ppa仍然具有精确/可信赖的软件包以及更多最新的术语版本。但是,也许编辑答案以指出最新ubuntu版本中可用的冻结术语版本会有所帮助。

–哈维尔·洛佩斯(JavierLópez)
16年1月20日在5:52



#7 楼

另一个工具是catimg,可以使用

sudo apt-get install catimg


安装它,它实际上并不查看图像,而是将其转换为彩色字符。 br />

#8 楼

实际上,有一个名为TermKit的项目,如果您想对其进行测试-请访问http://blog.easytech.com.ar/2011/05/21/playing-with-termkit-with-chrome/,但它相当未完成(由于您似乎拥有Mac,因此应尝试使用Mac版本,因为它是“原始”)仅模式必须快速,因为我并不总是需要查看图像。另外-它需要与例如Vim ..

评论


我之前在Slashdot上阅读过有关该项目的信息。听起来很有趣!太糟糕了,您需要使用Google Chrome浏览器才能使用它...好吧,好吧,如果您从一开始就使用Chrome浏览器就还不错,但这似乎是不必要的依赖。

–克里斯托弗·凯尔·霍顿(Christopher Kyle Horton)
2012年1月22日上午10:58

@ WarriorIng64是的,我可以用Qt的WebKit破解它-但幸运的是,我们在存储库中安装了铬浏览器,因此安装Chromelike相当容易-我没有在计算机上尝试过TermKit( w /安装了Chromium,但是使用Fx作为主要对象),因为我非常依赖Vim,并且不能真正使用不会给我我心爱的文本编辑器提供帮助的终端;)

– sakjur
2012年1月22日11:01



#9 楼

这不存在;据我所知,gnome-terminal仅能显示文本。

但是,您可以从命令行调用图像查看器以查看特定文件夹中的图片。因此,从上面显示要列出当前文件夹中所有.jpg图片的模型开始,您可以从命令行使用GNOME的眼睛(Ubuntu的默认图像查看器)进行类似操作:
/>
请注意,虽然您可以使用提供的箭头按钮在它们之间循环,但出现的窗口一次只会显示一张图像。

评论


如果从终端运行,最好使用eog * .jpg和disown,否则在终端关闭时,EOG可能会退出。 N.B.我希望EOG仍然是Ubuntu的默认图像查看器-Shotwell很好,但是尝试为我的30GB以上的图片编制索引....而且还是很慢又很烦人

–野生
2014年7月18日在21:13



以前的所有答案都证明此帖子有误。

– Arnaud De Broissia
19年4月5日在15:35

#10 楼

我写了一个工具来做到这一点。我将其命名为Show Image in Terminal(siit)。假定您具有256色端子和UTF8支持,并且使用perl编写。

我将其放入了~/bin中。假定您具有Image :: Magick,Term :: Size,Getopt :: Long和Time:HiRes,它们都应该在发行版的存储库或CPAN中可用。

我的意图是躲进我的房子,并快速查看图像而无需在X上启动显示器。脚本会缩放到适合您所在终端的宽度/高度。终端的垂直分辨率,这确实有助于清晰度。 YMMV。

这里的示例镜头

这里的源代码

评论


它是“ siit”,而不是“ shit”(严重....)

– Star OS
15年9月24日在7:40

它最初被称为termpeg,但是很难记住,并且不能很好地完成制表符。此外,“这段代码是一个小难题”甚至没有道理。

–汤姆
16年2月21日在18:20

源代码链接对我不起作用,但是我在互联网上找到一个版本,这是一面镜子:gist.github.com/certik/4336299de10f400ee49943bd9f8a8ba6

–OndřejČertík
16年7月2日,下午3:05

您有机会提供捆绑版本吗?在必须安装库时,我总是放弃。

– Sridhar Sarnobat
19年9月3日在21:03

#11 楼

除Joel的回答外,Ranger终端文件管理器的扩展名为w3mimgdisplay可以全彩色显示图像,并且还支持“老式ASCII艺术预览”。这是启用它的方法。这可能不是您想要的确切内容,而是一种在终端中预览图像的方法。



#12 楼

以下是node.js(此处的安装说明)中的一些解决方案。类型npm install -g <package_name>,其中package_namepicture-tubeimaging之一。

#13 楼

只是为了添加到集合中(也许也为了将来),还有一个积极开发/维护的软件chafa,其功能类似于catimg。两者都可以显示GIF以外的图像
chafa:

catimg: