活久见!Linux命令行居然也可以用来查看图像?
在 Linux 中有很多 GUI 应用程序可以查看图像,但是这对经常使用命令行来工作的人可能会觉得很繁琐。今天要介绍的是 3 个实用的 CLI 图像查看器来在终端上查看图像,让那些使用 CLI 的朋友能更加高效地工作。
1. FIM
FIM 是 Fbi IMproved 的缩略语,意思是 Fbi 改进版。
有些人可能还不了解 Fbi ,Fbi 全称 linux framebuffer imageviewer。它使用系统的 framebuffer 直接从命令行显示图像。它默认显示的图像格式有 bmp、gif、jpeg、PhotoCD、png、ppm、tiff 和 xwd 。对于其他格式,它会尝试使用 ImageMagick 来进行转换。
接下来我们就简单介绍一下它的安装和使用。对于更多Linux干货资料,可以在公众号「良许Linux」后台回复「资料」免费获取。
安装 FIM
FIM 可以在基于 deb 的系统(如 Ubuntu、Linux Mint)的默认存储库中使用,所以,这些用户可以用 apt-get 命令安装 FIM :
$ sudo apt-get install fim
如果不能直接安装,那么可能就需要去 官方文档页面 “Download and build instructions” 这一部分下载源码并编译安装。
FIM 的使用
安装完后,你可以使用命令显示带有“自动缩放”选项( -a
)的图像:
$ fim -a dog.jpg
FIM 支持一次性打开多个文件,例如,当前目录有很多个 .jpg
文件,你可以使用通配符 *
来打开这些文件:
$ fim -a * .jpg
或者,要打开目录中的所有图像,例如 Pictures
:
$ fim Pictures/
我们还可以递归地打开文件夹及其子文件夹中的图像,然后对列表进行如下排序:
$ fim -R Pictures/ --sort
要以 ASCII 格式呈现图像,可以使用 -t
选项:
$ fim -t dog.jpg
退出 FIM 请按 ESC
或者 q
。
最后介绍一些用于控制 FIM 中图像的常用快捷键:
- PageUp / Down:上一个图像/下一个图像
- +/-:放大/缩小
- a:自动缩放
- w:合适宽度
- h:合适身高
- j / k:向下平移/向上平移
- f / m:翻转/镜面反射
- r / R:旋转(顺时针和逆时针)
- ESC / q:退出
要想了解更多内容,请参考其手册页:
$ man fim
对于更多Linux干货资料,可以在公众号「良许Linux」后台回复「资料」免费获取。
2. Viu
Viu 是使用 Rust 编程语言编写的免费开源 CLI 图像查看器。它的安装和使用也非常方便。使用 Viu 我们可以:
- 显示主流的图像格式,包括 .jpg .png .gif 等。
- 显示自定义尺寸的图像。
- 直接从图像托管平台显示图像,例如 giphy 。
安装 Viu
由于 Viu 是用 Rust 编写的,我们可以使用 Cargo 包管理器安装它。没有安装 Rust 的请先安装好在进行后续操作。在 Linux 中安装 Rust 后,运行以下命令安装 Viu :
$ cargo install viu
在 Arch Linux 及其衍生产品上,可以使用任何类似于 Yay 的 AUR 辅助程序安装:
$ yay -S viu
Viu 也可以作为编译的二进制文件使用。下载最新的二进制文件。
下载完后,使其可执行:
$ chmod +x viu
然后将其移至相关的路径,例如 /usr/local/bin
:
$ sudo mv viu /usr/local/bin/
Viu 的使用
Viu 的使用很简单,viu + 图像路径
,然后敲 ENTER
键,例如:
$ viu image.jpg
你还可以通过 -h
高度, -w
宽度 自定义图像尺寸,例如:
$ viu image.jpg -w 40
若要在文件夹中一个接一个地显示多个图像,请使用如下通配符:
$ viu Desktop/pic\ *
显示 gif 图:
$ viu animated.gif
退出,只需按 CTRL + C
。
还有,它还可以显示图像托管站点的图像,例如 Giphy ,操作如下:
$ curl -s https://media.giphy.com/media/6pUBXVTai18Iw/giphy.gif | viu -w 40
更多的 Viu 使用方法请参考它的帮助手册:
$ viu --help
3.Lsix
与前两个不同,Lsix 仅在终端中显示缩略图。它类似于类 Unix 系统中的 'ls' 命令,但仅适用于图像。Lsix 是一个简单的 BASH 脚本,可以使用 Sixel 图形工具在终端中查看缩略图。
这个工具我之前有写过类似文章,可点击下面链接查看:
看完的都是真爱,点个赞再走呗?您的「三连」就是良许持续创作的最大动力!
- 关注原创公众号「良许Linux」,第一时间获取最新Linux干货!
- 公众号后台回复【资料】【面试】【简历】获取精选一线大厂面试、自我提升、简历等资料。
- 关注我的博客:lxlinux.net
活久见!Linux命令行居然也可以用来查看图像?的更多相关文章
- 活久见!TCP两次挥手,你见过吗?那四次握手呢?
活久见!TCP两次挥手,你见过吗?那四次握手呢? 文章持续更新,可以微信搜一搜「小白debug」第一时间阅读,回复[教程]获golang免费视频教程.本文已经收录在GitHub https://git ...
- Linux命令行与命令
Linux命令行与命令 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! Linux的命令是很重要的工具,也往往是初学者最大的瓶 ...
- 核心系统命令实战 第一章Linux命令行简介
第一章Linux命令行简介 1.1 Linux命令行概述 1.1.1 Linux 命令行的开启和退出 开启:登陆账号密码进入系统 退出:exit/logout 快捷键:Ctrl+d 1.1.2 Li ...
- 40个超有趣的Linux命令行彩蛋和游戏
40个有趣的Linux命令行彩蛋和游戏,让你假装成日理万机的黑客高手.附一键安装脚本,在树莓派和ubuntu云主机上亲测成功,有些还可以在Windows的DOS命令行中运行. 本文配套B站视频:40个 ...
- 像黑客一样使用 Linux 命令行
前言 之前在博客园看到一篇介绍 IntelliJ IDEA 配置的文章,它里面用的是 gif 动态图片进行展示,我觉得很不错.所以在我今天以及以后的博文中,我也会尽量使用 gif 动图进行展示.制作 ...
- 详解Linux命令行下常用svn命令
1.Linux命令行下将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/do ...
- linux 命令行 光标移动技巧
linux 命令行 光标移动技巧 看一个真正的专家操作命令行绝对是一种很好的体验-光标在单词之间来回穿梭,命令行不同的滚动.在这里强烈建立适应GUI节目的开发者尝试一下在提示符下面工作.但是事情也不是 ...
- 在linux命令行下执行php 程序
如何在linux命令行下,执行php程序. 例子 打印当前时间 php -r "echo time()" 随机输出一个数字 php -r "echo rand(1,20) ...
- git代理,windows命令行代理,linux命令行代理
下载不动设置代理:git config --global http.proxy http://127.0.0.1:1080git config --global https.proxy https:/ ...
随机推荐
- java中的对象 方法 引用 等一些抽象的概念是什么意思呢?
2020-03-14 最近这一段时间有点忙,好久都没有更新博客了,之后我会一直坚持下去的,和大家一同进步的. 这段时间一直在学java,相信刚开始学习java的小白,刚开始接触那么些抽象的概念一定和我 ...
- def跨域+jwt
1.跨域 由于浏览器具有“同源策略”的限制.如果在同一个域下发送ajax请求,浏览器的同源策略不会阻止.如果在不同域下发送ajax,浏览器的同源策略会阻止. 总结 域相同,永远不会存在跨域. crm, ...
- Navicat15最新版本破解 亲测可用!!!
1.下载Navicat Premium官网https://www.navicat.com.cn/下载最新版本下载安装 2.本人网盘链接:https://pan.baidu.com/s/1ncSaxId ...
- frida的简单实用
一.环境 1.环境 1.手机运行服务端 2. 电脑端运行客户端3.进行端口转发 adb forward tcp:27042 tcp:27042 adb forward tcp:27043 tcp:27 ...
- windows git pull或者push代码时弹出安全框解决办法
目录 1.打开控制面板->凭据管理器>删除已有的git凭证 2.新增一个凭证 @ 如果报如下错误: 1.打开控制面板->凭据管理器>删除已有的git凭证 2.新增一个凭证 网络 ...
- js String方法总结
字符方法(3) charAt(pos: number): string; // 返回特定位置的字符. charCodeAt(index: number): number; // 返回表示给定索引的字符 ...
- java web 中base64传输的坑
今天在项目中,前端需要向后端发送一张图片,使用toDataURL方法以base64编码的形式传输,在写好程序后,发现报错为base64不是有效的图片,反复排查后发现接口需要一张格式为png的图片,在前 ...
- 15. 获取类路径下文件对应的输入流(inputStream)方式
//获取 inputStream 方式一Resource resource = new ClassPathResource("excel/template/test.xlsx"); ...
- docker系列详解<二>之常用命令
此篇我们以从docker运行一个tomcat为例,进行一下操作: 拉取镜像 查看镜像 创建容器 查看运行状态 进入退出容器 停止容器 重启容器 删除容器 删除镜像 1.拉取tomcat镜像: 1).查 ...
- C# 基础知识系列- 3 集合数组
简单的介绍一下集合,通俗来讲就是用来保管多个数据的方案.比如说我们是一个公司的仓库管理,公司有一堆货物需要管理,有同类的,有不同类的,总而言之就是很多.很乱.我们对照集合的概念对仓库进行管理的话,那么 ...