web-dev-qa-db-ja.com

.shスクリプトはターミナルで機能しますが、「ターミナルで実行」を介して実行された場合は機能しません。

私はこれに夢中です...

私は、「Jupyter Notebook」というアプリケーションを、1行の.shスクリプト(実行可能にした)で簡単に開くことができるようにしたいと考えています。

jupyter notebook

この行をターミナルに直接配置すると、機能します。 .shスクリプトをターミナルにドラッグアンドドロップしてEnterキーを押すと、機能します。しかし、Nautilusからスクリプトを実行して「ターミナルで実行」と言うと、ほんの数秒でターミナルが開くのが見えますが、何も起こりません。

ヘルプは大歓迎です。ベスト、ハロ

//編集

スクリプトの最後に「/ bin/bash」を追加しましたが、ターミナルは開いたままになり、次のようなエラーメッセージが表示されます。

「/path_to_script/script.sh:1:/path_to_script/script.sh:jupyter:not found」

これは変ではないですか?前に言ったように、Terminalに直接入力すると動作します!

4
Khalo

代わりにこれを使用してください:

#!/bin/bash
/home/$USER/.local/bin/jupyter notebook

または

#!/bin/bash
/usr/local/bin/jupyter notebook

それでも解決しない場合は、jupyterへのパスを次のコマンドの出力に置き換えます。

which jupyter
3
mchid