在终端中用默认程序打开文件
在Linux环境下工作,大部分时间都是在与终端打交道,经常会遇到要查看某个文件,比如一个图片或者一个word文档(不能在终端中直接查看的)。这时通常的做法是切换到gui界面,到文件所在的目录,双击想打开的文件。另外一种方法是直接在shell中输入指定的程序打开文件,比如: evince xx.pdf 查看某个pdf文件。当然这样做的前提是你得记得住那些程序的名字,比如你能记得住用LibreOffice打开一个word文件的命令吗?反正我是记不住。
在图形界面中已经定义了很多默认的文件打开方式,比如你双击网页文件就会自动用默认的浏览器打开,双击一个图片就会用默认的图片浏览器打开,所以终端下也应该会有相应的机制。顺着这个思路去google了一下,就发现了xdg-open这个命令(兼容gnome和kde),这个命令会用图形界面中设置的文件默认打开方式一致(和直接双击打开文件的行为应该是一样的)。
利用这个命令,在终端 下打开文件就方便多了,比如用默认的pdf 阅读器打开一个pdf文件:
xdg-open xxx.pdf
还可以用图形下的文件管理器打开目录,比如打开用户主目录:
xdg-open ~
非常有用的一个工具!
具体操作如下:
xdg-open { file | URL }
xdg-open { --help | --manual | --version }
OK,现在是不是方便多了,通过快捷键Ctrl+Alt+T可以打开shell,F11可以全屏显示(Alt+F9最小化窗口,Alt+F10最大化/恢复窗口),再辅予xdg-open命令,极大减少了鼠标操作,也大大提升了效率。
附xdg-open manual部分信息:
xdg-open opens a file or URL in the user's preferred application. If a URL is provided the URL will be opened in the user's preferred web browser. If a file is provided the file will be opened in the preferred application for files of that type. xdg-open supports file, ftp, http and https URLs.
xdg-open is for use inside a desktop session only. It is not recommended to use xdg-open as root.