Answers:
有没有一种方法可以使用命令行使用默认程序打开文件?
这是一项工作xdg-open
:
xdg-open在用户的首选应用程序中打开文件或URL。如果提供了URL,则将在用户首选的Web浏览器中打开URL。如果提供了文件,则将在首选应用程序中打开该类型文件的文件。xdg-open支持文件,ftp,http和https URL。
使用默认应用程序打开文件的语法:
xdg-open {file}
xdg-open预装在Ubuntu中。
或者,有没有给定文件扩展名的方法来确定打开它的命令?
通过扩展,不。默认应用程序是根据MIME类型而不是扩展名来选择的。Linux没有“扩展名”。
对于特定文件,可以xdg-mime
用来确定文件的MIME类型和与其关联的默认应用程序:
用于显示文件的MIME类型的语法:
xdg-mime query filetype {file}
显示MIME类型的默认应用程序的语法:
xdg-mime query default {mimetype}
显示文件默认应用程序的语法:
xdg-mime query default "$(xdg-mime query filetype {file})"
作为(棘手的)解决方法,您可以使用以下命令
xdg-mime query default \
`xdg-mime query filetype "$(find ~ / -iname '*.png' -print -quit)"`
显示默认应用程序,例如PNG图像。
仅当您的计算机上有PNG图像并且找到的第一个以结尾的文件.png
是有效的PNG图像时,此方法才有效。