Linux下的通用打开命令

本文对比了Linux下see、xdg-open与gnome-open三种文件打开命令的特点及使用效果,详细介绍了它们如何处理不同类型的文件,并总结了各自的优缺点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转载自:http://blog.ossxp.com/2011/04/2437/

2011-05-21


在Mac下的终端里可以输入open来打开任意类型的文件,linux下是否也有类似的命令呢?

经查,发现有三个命令可以实现类似效果:

  • see

see通过查找在mailcap文件中设定的文件类型和应用程序映射来打开文件。系统配置文件在/etc/mailcap,用户可以自定义配置文件到~/.mailcap。

通过see调用GUI程序以后要等待程序结束才可以继续输入命令。

  • xdg-open

xdg-open使用的配置文件不详。调用程序后终端仍可继续输入命令而不必等待程序结束。

  • gnome-open

gnome-open使用GNOME文件管理来打开文件。一般和Nautilus中设定的文件关联一致。

测试


我的系统为Ubuntu 11.04。

打开pdf文件,see调用了Okular打开,而xdg-open和gnome-open调用了evince。

打开jpeg文件,see调用了feh,而xdg-open和gnome-open调用了eye of gnome。

打开html文件,三者都调用了x-www-browser,这里是google-chrome。

打开utf-8编码的txt(后缀为txt),see调用了less,xdg-open和gnome-open调用了gedit。

打开utf-8编码的txt(无后缀),see不识别:

Warning: unknown mime-type for "test_utf-8" -- using "application/octet-stream"
Error: no "view" mailcap rules found for type "application/octet-stream"

而xdg-open和gnome-open处乱不惊,gedit依旧。

打开cp936编码的txt,see误以为二进制文件,强制打开后失败,退出码1:

$ see test_gbk.txt
"/tmp/file1tdJGh" may be a binary file.  See it anyway?
Warning: program returned non-zero exit code #1

xdg-open和gnome-open表现的很淡定,继续gedit之。

总结


see的配置文件mailcap超级复杂,要自定义恐怕要费不少时间,而xdg-open/gnome-open由于和Nautilus保持一致,这样就很和谐,很方便。并且xdg-open/gnome-open在输入命令后不必等待程序结束就可以继续输入,比see要实用。

参考自:http://zh-cn.w3support.net/index.php?db=so&id=264395

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值