使用 BASH 打开任何类型的应用程序

Pra*_*uva 3 application bash-script file-opening

我制作了一个可以打开任何应用程序的 Java 程序。假设有一个文件名“*.jpg”,它将允许操作系统识别应用程序的类型,然后打开默认应用程序。另一个例子:假设文件名是“*.flv”,那么它会打开默认的媒体播放器,就像你在 nautilus 中单击一个图标一样,但唯一的区别是它是在命令行中。这是为此的java程序:

import java.awt.*;
import java.io.*;
public class OpenFile{
    public static void main(String args[]){
      try{
          String filename = args[0];
          System.out.println(args[0]);
          Desktop.getDesktop().open(new File(filename));
      }
      catch(Exception e){
          System.out.println("Sorry an exception occured. Could not perform the operation.");
      }
    }
 }
Run Code Online (Sandbox Code Playgroud)

现在这个脚本会导致性能问题。现在我想写一个 BASH 脚本来完成这个任务??

jor*_*anm 13

已经有一个用于此的外部命令。没有什么新东西需要写。命令是xdg-open. 它将根据其 MIME 类型关联打开一个文件。下面是一个例子:

xdg-open file.png
Run Code Online (Sandbox Code Playgroud)