私はどんなアプリケーションでも開くことができるJavaプログラムを作成しました。ファイル名が「*.jpg」であると仮定すると、オペレーティング・システムでアプリケーション・タイプを識別し、デフォルト・アプリケーションを開くことができます。別の例:ファイル名が「* .flv」であると仮定すると、ノーチラスでアイコンをクリックしたかのようにデフォルトのメディアプレーヤーが開きますが、唯一の違いはコマンドラインにあることです。これは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