当前位置:  开发笔记 > 编程语言 > 正文

Bash:获取文件类型的标准程序

如何解决《Bash:获取文件类型的标准程序》经验,为你挑选了1个好方法。

后台是一个shell脚本,用于打开网络电台的.m3u文件.因此,我想知道脚本内部,用户打开此类文件的程序是什么.目前,他必须设置环境变量$ PLAYER,但显然这不是一个好方法.

替代方案:是否有一个命令采用文件名并搜索自己的适当程序来处理该文件?比如file,例如,

open-file my_playlist.m3u

该脚本应该是可移植的,至少在Ubuntu,Debian和Windows/Cygwin机器上运行.

干杯,



1> alxp..:

这必须在每个平台上以不同方式完成.在Mac OS X上,"打开"命令将执行您想要的操作.

在Linux中它变得模糊,因为桌面环境(GNOME或KDE)保留了自己的应用程序列表,以便为每种文件类型运行.

您可以在Ubuntu/GNOME中查找两个包含此信息的文件:〜/ .local/share/applications/defaults.list和〜/ .local/share/applications/mimeinfo.cache

其他人希望知道如何在Windows中执行此操作并且可以插入.

编辑:从其他答案窃取:

Linux的:

xdg-open [文件名]

Cygwin的:

cygstart [文件名]

为了完整起见,这里有一个关于如何检测您正在运行的操作系统的上一个问题的链接:从bash Script检测操作系统

推荐阅读
手机用户2402852387
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有