1. ホーム
  2. bash

[解決済み] このfile.shをダブルクリックで実行できるようにするにはどうしたらいいですか?

2022-04-15 07:22:43

質問

まず最初に、私はMacを使用しています。

次に、この "file.sh" と呼ぶものを実行する必要があります。実行するたびに、ターミナルを開いてタイプする必要があります。

cd /Users/Jacob/Documents/folderWithFileInIt
bash file.sh

これはこれでいいんですが、ダブルクリックでファイルを実行するようにすれば、もっと早くなるような気がするんですが、いかがでしょう?

そこで質問なのですが、このファイルをダブルクリックで実行できるようにするにはどうしたらいいのでしょうか?

私が考えたのは、どちらかです。

a) ターミナルにchmodのようなものを入力して、パーミッションを変更する?

b) ファイルを作って、上に書いたコードをその中に入れて^、そのファイルを実行可能な状態にする?

c) これを行うためのオートメーションをどうにかして作る?

どの方法が一番いいのか、あるいはもっといい方法があるのでしょうか?また、Terminalは初めてなので、できる限り説明をお願いします。ありがとうございます。

解決方法は?

デフォルトでは *.sh ファイルは、テキストエディタ(XcodeまたはTextEdit)で開かれます。開いたときにTerminalで実行されるシェルスクリプトを作成するには、「command」の拡張子を付けた名前、例えば file.command . デフォルトでは、これらはターミナルに送信され、シェルスクリプトとしてファイルを実行します。

また、ファイルが実行可能であることを確認する必要があります、例えば。

chmod +x file.command

これがないと、Terminal は実行を拒否します。

スクリプトの先頭が #! 接頭辞は、ターミナルがデフォルトのシェルで実行されるように特別に設定されているからです。(もちろん #! の行は、使用するシェルをカスタマイズしたい場合や、別のシェルを使用しているときにコマンドラインから実行できるようにしたい場合に使用します)。

また、ターミナルは作業ディレクトリを変更せずにシェルスクリプトを実行することに注意してください。スクリプトの先頭に cd コマンドを実行する必要がある場合、特定の作業ディレクトリで実行されます。