UbuntuでShellスクリプトファイルをダブルクリックしたとき、テキストエディタで開くだけでなく直接実行したい場合は、2つの点を確認する必要があります。スクリプト自体に実行権限があること、そしてファイルマネージャー側で「実行可能なテキストファイルの実行」が許可されていることです。
1. スクリプトに実行権限を付与する
まず、スクリプトの1行目に正しいインタプリタ指定があるか確認します。例:
#!/bin/bash
次に、端末でスクリプトに実行権限を付与します。
chmod +x your-script.sh
ファイルマネージャーでスクリプトファイルを右クリックし、「プロパティ」を選び、「権限」で「プログラムとして実行可能」にチェックを入れる方法でも構いません。
2. ファイルマネージャーの設定を変更する
フォルダーを1つ開き、左上の Home Folder(ホームフォルダー) をクリックしてから、Preferences(設定) に入ります。
Behavior(動作) タブで、実行可能なテキストファイルの扱いを探し、スクリプトを実行する設定にします。Ubuntu / Nautilus のバージョンによって表示文言は少し異なる場合がありますが、一般的な選択肢は次のとおりです。
- Run executable text files when they are opened:ダブルクリック時に実行可能なテキストファイルを直接実行します。
- Ask each time:ダブルクリックするたびに、実行するか内容を表示するかを確認します。
- View executable text files when they are opened:ダブルクリック時にテキストエディタで開きます。
より安全に使いたい場合は Ask each time を選ぶのがおすすめです。ダブルクリックですぐ実行したいことが明確なら、Run executable text files when they are opened を選びます。
下図のように設定します。
3. スクリプトをテストする
次のような簡単なスクリプトを新規作成してテストできます。
#!/bin/bash
notify-send "Shell script is running"
test.sh として保存したら、次を実行します。
chmod +x test.sh
その後、ファイルマネージャーでダブルクリックします。設定が正しければ、システムがスクリプトを実行し、通知が表示されます。
ダブルクリックしてもテキストエディタで開くだけの場合は、スクリプトに実行権限が付いているか、またファイルマネージャーの「実行可能なテキストファイル」の動作設定が保存されているかをもう一度確認してください。
