コードを github に置いていますが、実装の問題に遭遇しました。多くのコンピューターで同じコードを実行しています (root アクセス権を持っていないコンピューターを含む)。
1 つのコード (bash スクリプト) は、次のような Python コードを呼び出します。
python somecode.py
シェルは正しいバージョンの python を実行しますが、somecode.py を見つけられません。
私が試したこと:
失敗 #1: somecode.py を含むディレクトリとファイルへのフル パスの両方を PATH に追加しようとしました。無駄に。[Errno 2] そのようなファイルまたはディレクトリはありません
失敗 #2: 一番上の行に正しいバージョンの python へのフル パスを追加すると、1 台のコンピューターでのみ動作させることができます。
#!/usr/local/cool/python/version/location
ただし、これにより、他のコンピューターでの実行が中断されます。
失敗 #3: bash スクリプトに次のように記述させると、機能させることもできます。
python /full/path/to/github/place/somecode.py
ただし、パスはコンピューターごとに異なるため、これは 1 つのコンピューターでのみ機能します。
本当にやりたいこと: 複数のコンピューターで同じコード (bash スクリプトと somecode.py の両方) を使用できるようにしたい。
これを適切に行う方法についての提案は大歓迎です。ありがとう!
解決
追加した:
#!/usr/bin/env python
私の somecode.py コードの先頭へ。
mv somecode.py somecode
chmod +x somecode
PATH に /full/path/to/directory/with/somecode があることを確認してください。
Bash スクリプトは現在、次のようにのみ記述しています。
somecode
そしてそれは動作します。