bash
sh
いいですね。 、、などを使用してシェルスクリプトを作成できます。zsh
次のようにファイルの上部にハッシュバンを入れることができます。
#!/usr/bin/env bash
これにより、ファイルの実行に使用するインタプリタがカーネルに通知されます。
しかし、私はコマンドラインでどのインタプリタを使用するかをマシンに指示する方法がわからないことに気づきました。
たとえば、次のように書く場合:
$ foo bar baz
コマンドラインでコマンドを解釈するためにどのソルバーが使用されているかどうかはどうすればわかりますか?特定のインタプリタを使用するようにコンピュータにどのように指示しますか?
質問が明確になりますように。
答え1
意図的に別のシェルを選択しない限り、現在実行中のシェルである可能性が最も高いログインシェルを取得します(たとえば、ターミナルエミュレータの設定でログインシェル以外のシェルを選択するか、ログイン時にシェルを明示的に呼び出すことによって)。たとえばssh remote-host /path/to/shell
)を使用すると、次のようになります。
echo $SHELL
他のシェルを使用するには、次の手順に従ってください。
exec /path/to/shell
たとえば、
exec /bin/bash