我制作了一个可以打开任何应用程序的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.");
}
}
}
现在这个脚本会导致性能问题。现在我想写一个 BASH 脚本来完成这个任务?
答案1
已经有一个外部命令可以实现这一点。无需编写任何新内容。命令是xdg-open
。它将根据文件的 MIME 类型关联打开文件。以下是示例:
xdg-open file.png