web-dev-qa-db-ja.com

Windowsで.EXEファイルのようにダブルクリックするだけでスクリプトを実行する方法は?

Windowsで.exeファイルのようにダブルクリックしてbashスクリプトを実行可能にするにはどうすればよいですか? ランチャーを作成してスクリプトを割り当てる を試しましたが、結果は2つあります。

  1. ターミナルがきらめいて消え、何も行われません。
  2. 動作させるには、ターミナルで実行するように指定する必要があります。

Tomcatのすべての依存関係を含む、オフラインPCにTomcatをインストールするスクリプトがあります。スクリプトを使用するほとんどの人はUbuntuに馴染みがないため、スクリプトをウィンドウのようなダブルクリックで動作させる必要があります。

上記の説明は忘れてください。ターミナルを使用せずにダブルクリックして実行できるスクリプトを作成したい。誰もが方法を知っていますか?

111
user61928

私はこれをテストし、うまくいきました。スクリプトが正しい Shebang で始まることを確認してください。 #!/usr/bin/env bash

次に、次の手順を実行します。

  • ヒット Alt+F2 コマンドを実行します。
  • dconf-editorと入力してヒット Enter
  • Dconfg-editorで、org ➤ gnome ➤ nautilus ➤ preferencesに移動します
  • executable-text-activationをクリックし、ドロップダウンメニューから次を選択します。

    launch:プログラムとしてスクリプトを起動します。
    または
    ask:ダイアログで何をするかを尋ねます。

    screenshot

  • Dconf-editorを閉じます。それでおしまい!

ターミナルを使用する別の方法:実行:

gsettings set org.gnome.nautilus.preferences executable-text-activation 'launch'

:ファイルは実行可能である必要があります。ファイルの許可を変更する必要がある場合もあります。右クリックして、「プログラムとしてファイルの実行を許可する」を設定します

screenshot

ソース

129
stevenmc

ノーチラス(別名ファイル)

  1. ファイル(編集Unity(17.04以下))>環境設定>動作タブに移動します

    screenshot

  2. 実行可能なテキストファイルの設定を変更します。

    screenshot

71
Anon

UbuntuおよびすべてのUnixベースのOS afaikでは、デフォルトで実行可能ファイルとして設定されているものはありません。これを行うには2つの方法があります。

  1. 実行するスクリプトまたはファイルを右クリックします。 [プロパティ]に移動し、[権限]タブに移動します。 [実行]というチェックボックスをクリックします。

  2. ターミナルを開く cd ファイルが見つかったディレクトリに。 chmod ugo+x filenameと入力します。これにより、実行するファイルが設定されます。

これで、ユーザーは心のコンテンツをダブルクリックできます。

10
SomKit

*。desktopファイルの作成はここにありません:

$ cat shortcut-for-my-script.desktop
[Desktop Entry]
Type=Application
Terminal=true
Name=Click-Script
Icon=utilities-terminal
Exec=gnome-terminal -e "bash -c './script.sh;$Shell'"
Categories=Application;

1つのスクリプトに対して複数の*。desktopファイルを作成する場合、異なるパラメーターを渡すことで複数のconfigurationsを作成できます。これは非常に快適で使いやすい方法です。

8
h0ch5tr4355

XFceを使用している場合、次のコマンドを実行してThunarでスクリプトを実行できます。

xfconf-query --channel thunar --property /misc-exec-Shell-scripts-by-default \
             --create --type bool --set true

またはgui xfce4-settings-editorを使用して同じプロパティを作成する

6
jcubic

3つのポイントを確認する必要があります。

  • Nautilus/Nemo設定: https://askubuntu.com/a/286651/301025
  • スクリプトファイルはexecutableでなければなりません: https://askubuntu.com/a/275714/301025
  • ファイルシステムはexecutionを許可する必要があります:

    1. コンソールにmountと入力します
    2. ファイルシステムにnoexecフラグがあるかどうかを確認します
    3. /etc/fstabを編集してnoexecフラグを削除し、変更したシステムを再マウントします(たとえば、再起動が機能します)
2
sangorys

デスクトップでSHELLスクリプトまたはWhateverの起動をコマンドラインで作成する場合は、バックグラウンドで実行されるようにスクリプトに通知することを忘れないでください。

彼が仕事を終えると、スクリプトは死にます。

umaskのデフォルト値に基づいて、デフォルトではファイルの実行権限がなく、実行権限を取得するにはmodを変更する必要があります。次のようなものです。

chmod u+x filename
1
Ali Dehghani