14.04 では、ターミナルを開かずに作成した bash スクリプトを実行するにはどうすればよいですか?

14.04 では、ターミナルを開かずに作成した bash スクリプトを実行するにはどうすればよいですか?

私はターミナルをよく使います。スクリプトを書いて、今は ~/blah/script.sh に保存しています。Unity (Dash?) からスクリプトを実行するにはどうすればいいでしょうか?

昔は ALT + F2 を使ってコマンドを入力していましたが、今では期待どおりには動作しません。

おそらく、どこかの $PATH 変数を変更して、dash が見つけられるようにするのでしょうか? さまざまな理由でさまざまなスクリプトを提供する場所にあるため、スクリプトがあるディレクトリを変更したくありません。

チップ?

答え1

ファイルを作成し.desktopて に保存するだけです~/.local/share/applications。最も基本的な形式は次のとおりです。

[Desktop Entry]
Name=name_of_your_script_like_you_see_it_in_Dash
Exec=sh /path/to/script.sh
Icon=/path/to/some/icon
Type=Application

それを空のファイルにコピーし、 として保存しますscript.desktop~/.local/share/applicationsログアウト/ログイン後、Dash に表示されます。

スクリプトが実行可能な場合は、Exec=sh /path/to/script.sh単に に置き換えることができます。Exec=/path/to/script.shスクリプトに言語拡張子がない場合は、次のようにします。Exec=/path/to/script

注記

スクリプトへのパスにスペースを含む (フォルダー) 名が含まれている場合は、名前を引用符で囲むだけでエスケープできます。例:

Exec=sh /path/with/'Folder with spaces'/to/script.sh

(アイコンへのパス内のスペースはそのまま残しておいてもかまいません)

関連情報