为什么要介绍 xdg-open 呢,得先从需求说起。

一般在控制台中,可以使用命令操作各式文本文件。但难以避免,需要操作一些非文本文件,如 pdf,doc 等。

此时,一般的做法是,打开文件管理器,再一层层进入对应目录,找到对应文件,再双击打开。

这种方式的问题是,操作起来较为麻烦,效率低,尤其是当文件路径较深,某几个文件夹中文件又多的情况下。

有没有简单点的办法呢,有,最开始我是这么做的:

方式一: 借助nautilus

nautilus 是 ubuntu 下默认的文件管理器。

在控制台可以使用 nautilus 命令直接对指定路径打开文件管理器,省去一层层双击鼠标的麻烦

nautilus   路径

打开文件管理器之后,再使用鼠标双击打开目标文件即可。

怕记不住 nautilus 的,可以为它添加 alias

alias opendir='nautilus'

方式二:直接打开

大多数程序都是可以从命令行调用启动的,因此直接调用对应的应用程序,打开对应文件。例如

wps  xxx.doc
FoxitReader xxx.pdf

方式三:xdg-open

介绍了以上两个方式,可以发现,第一种好记,就一个命令,打开文件管理器,但是麻烦,还得再用鼠标双击去打开对应文件。

第二种直接点,一步到位打开目标文件,但不好记,每种格式需要记住对应的程序名。

那怎么选择呢?其实可以不选择,因为掌握了xdg-open之后,上面两种方式,就两者皆可抛了。

xdg-open用法非常简单,就直接参数传入要打开的文件,等效于鼠标双击打开,系统会根据文件类型自动调用对应的程序,如

xdg-open  xxx.doc
xdg-open xxx.pdf
xdg-open xxx.png

如果传入路径的话,则是使用文件管理器打开

xdg-open  .
xdg-open ~/Downloads

还可以传入网址

xdg-open  www.google.com

一招鲜吃遍天,但讲道理 xdg-open 还是比较难输入的,为了更顺手,可以考虑添加适合自己的alias,比如我就添加了

alias dakai='xdg-open'
alias 打开='xdg-open'

拼音中文双管齐下,一般情况下用"dakai",但有时候输入法没切换过来,敲完发现是中文“打开”,没关系,照样能开,就是这么简单粗暴。

Linux实用命令之xdg-open的更多相关文章

  1. 14: linux实用命令

    1.1 基本实用命令整理 1.查找大文件文件 du -sh ./*|grep G                 # 查看当前目录下个文件大于1G的文件夹 2.查找日志文件中 5xx数量,并进行排序 ...

  2. 个人的Linux实用命令

    Linux下的命令有那么多,我不可能也不想去把每一个都记住,列举一些自己工作中很实用的命令,这些命令或许不是很常用,但是有时候却离不了. 1.网络方面 service iptables start/s ...

  3. Linux实用命令整理

    说明 点击标题可进入详细讲解的章节 0. 基本命令 linux 基本命令整理 1. 压缩 解压 tar -zcvf a.tar.gz a #把a压缩成a.tar.gz tar -zxvf a.tar. ...

  4. Linux实用命令行

    对于Linux命令,我在学习和使用过程中是有一个循序渐进的过程的.适合小白学习快速使用.大笑 跳转目录:cd +路径 例如:cd /home/workspace 查看某个文件,常用的是查看日志:tai ...

  5. Linux实用命令

    0. 基本命令 1. 压缩 解压 tar -zcvf a.tar.gz a #把a压缩成a.tar.gz tar -zxvf a.tar.gz #把a.tar.gz解压成a 2. vim小结 2.1 ...

  6. **linux实用命令之如何移动文件夹及文件下所有文件

    http://www.linuxde.net/2013/02/12448.html 格式: mv [选项(option)] 源文件或目录 目标文件或目录 使用命令: mv webdata /bin/u ...

  7. Linux实用命令之git-svn

    近日发现了有一个工具,git-svn,可以打通git svn之间的鸿沟. 很适合习惯于git,却需要维护svn代码的同学. 安装 sudo apt-get install git-svn 具体使用就不 ...

  8. linux 实用命令

    从一台机器远程连接到另一台机器: ssh platform@192.168.155.116 从一台机器发送文件到另一台机器: scp /home/weihuang/vie-zyzj.jar platf ...

  9. Linux实用命令工具-dtrx根据需要自动解压

    刚刚逛网站的时候看到一个命令工具很不错——dtrx. 这个工具能够解压的类型包括tar, zip,rpm, deb, gem, 7z, cpio, rar 等等,并且这个工具能自动识别压缩包类型并进行 ...

随机推荐

  1. [LeetCode] Search in Rotated Array

    Suppose a sorted array is rotated at some pivot unknown to you beforehand. (i.e., 0 1 2 4 5 6 7 migh ...

  2. jQuery数据表格控件boostrap-table

    表格初始化js代码 function TableInit() { $("#edit").attr({"disabled":"disabled" ...

  3. list+map

    通常读取数据库表中的一条记录后,可以存储于Hashmap变量中:若要读取多条记录,则依次读取每个记录时,先用Hashmap变量存取,然后将Hashmap加到ArrayList变量中. 注意: 每次读取 ...

  4. bug:margin合并

    demo1和demo2存在margin合并问题:外边距合并指的是,当两个垂直外边距相遇时,它们将形成一个外边距.合并后的外边距的高度等于两个发生合并的外边距的高度中的较大者.弥补方案:bfc; 添加一 ...

  5. DjangoORM基本增删改查

    1. 下载并且安装navicat premium,连接到db.sqlite3数据库. 2.先在urls.py中增加一条对应关系,专门用来做测试. 3.此时models.py中的代码如下: 4. 对于O ...

  6. [CQOI2011]动态逆序对 CDQ分治

    洛谷上有2道相同的题目(基本是完全相同的,输入输出格式略有不同) ---题面--- ---题面--- CDQ分治 首先由于删除是很不好处理的,所以我们把删除改为插入,然后输出的时候倒着输出即可 首先这 ...

  7. 洛谷P1242 新汉诺塔 【神奇的递归】

    题目描述 设有n个大小不等的中空圆盘,按从小到大的顺序从1到n编号.将这n个圆盘任意的迭套在三根立柱上,立柱的编号分别为A.B.C,这个状态称为初始状态. 现在要求找到一种步数最少的移动方案,使得从初 ...

  8. Redis的Sorted Set有序集合命令

    Sorted Set是Set的一个升级版本,它在Set的基础上增加了一个顺序属性,这一属性在添加修改元素的时候可以指定,每次指定后,zset会自动重新按新的值调整顺序.可以理解为有两列的mysql表, ...

  9. 解题:POI 2016 Nim z utrudnieniem

    题面 出现了,神仙题! 了解一点博弈论的话可以很容易转化题面:问$B$有多少种取(diu)石子的方式使得取后剩余石子异或值为零且取出的石子堆数是$d$的倍数 首先有个暴力做法:$dp[i][j][k] ...

  10. extjs6需要引入文件

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...