hellp.py pythonファイルがあるとします。 python hello.pyを実行してコマンドラインを実行することができますが、システムでhellp.pyファイルを実行できるように。/helloと入力するだけでどのように入力できますか?Linuxシステムで./helloを使用してPythonファイルを直接実行するための.shファイルの作成方法
答えて
Pythonスクリプトを実行可能ファイルとして実行する場合は、右のシバンを.pyファイルの先頭に置きます。例えば、hello.pyのように定義されることがあります。
$ chmod u+x hello.py
あなたが./hello.py
を実行すると、現在のインタプリタ:
#!/usr/bin/env python
print('hello, world!')
次に、あなたは、実行権限がファイルに設定されていることを確認する必要がありますPATH(1つが起動されている場合はvirtualenv内の1つを含む)は、Pythonスクリプトを実行します。
PyInstaller、Py2App、Py2Exeなどのツールでこれを行う方法はほかにもありますが、これはあなたが探しているものだと思います。
EDIT:コマンドラインで./hello
と入力するだけです。これに取り組むにはいくつかの方法があります。最初に、単にファイル拡張子を打ち消して、単にPythonファイルの名前をhello
とします。 2番目の方法(と私がお勧めする方法)は、ファイルへのリンクを作成することです。シンボリックリンクを作成することをおすすめします:
$ ln -s hello.py hello
このように、コードは明らかにPythonファイルですが、便利にアクセスできます。
Re: '.py'拡張子を持たないエントリーポイントを設定するのは間違いなく、おそらくベストプラクティスです(確かに、Windowsを含むPythonがサポートするプラットフォーム間で動作するもの)は、http:// python-packagingというsetuptoolsエントリポイントメカニズムを使用しています。 readthedocs.io/en/latest/command-line-scripts.html - パッケージされたプログラムがインストールされた後、選択したモジュールから目的の関数を呼び出すスクリプトがユーザのPATHに配置されます。 –
ええ、 'setuptools'は素晴らしいです。私は、言語を使い始めたばかりの人、あるいは小さなスクリプトを書いている人(Askerがやっていると思う)のように、 'setup.py'を使用してそれをvirtualenvまたはシステムサイトパッケージにインストールする際のオーバーヘッドが少し過度のことである。 Setuptoolsは素晴らしい選択肢であり、本番環境に保守または公開する必要のあるものには絶対におすすめです。 – Andrew
- 1. プロセスビルダを使用して.shファイルを実行する方法
- 2. 別のshファイルからshファイルを実行する方法
- 3. Linuxの.sh拡張子ファイルを作成する方法
- 4. C#IRON Pythonを使用して作成されたコンソールアプリケーション。 Linuxサーバ上で実行されるプロジェクトの実行ファイル
- 5. 直接のpython出力をlinuxファイル
- 6. LinuxでQtを使用してWindows用実行ファイルを作成する
- 7. バックグラウンドプロセスとしてfreshmeat_linux/Linux]でLinuxからshファイルを実行する
- 8. * nixシステム用のos.chmodなしでPythonで実行可能ファイルを作成する方法はありますか?
- 9. Javaを使用して.shファイルを実行する
- 10. .Rファイルを実行して.Rファイルを作成する方法
- 11. Anaconda Pythonを使用して.pyファイルを実行する方法
- 12. システムでpythonファイルを実行する方法
- 13. BeagleBoardのHello World実行可能ファイルを作成する
- 14. リモートLinuxマシン(AWS ec2インスタンス)上のローカルの.shファイル(ローカルのLinuxマシン上にある)を実行するためのsshの使用方法
- 15. 実行.SHのLinuxマシン上のJavaコードでのファイル
- 16. LINUXシステムでPythonまたはJavaを使用してKNIMEワークフローを実行
- 17. ファイル操作のためのPythonでのtextwrapperの使用方法
- 18. Pythonスクリプトから.shファイルを実行していますか?
- 19. Pythonを使用して外部実行ファイルを実行する方法は?
- 20. Windowsでbatファイルを起動し、特定のディレクトリから実行するためにlinux上のshファイルを起動する方法
- 21. Pythonアプリケーションを実行するためのバッチファイルの作成方法
- 22. メモ帳から直接ファイルを実行する方法++
- 23. xugglerライブラリを使用して実行可能ファイルjavaを作成する方法
- 24. ベイグラントアップ実行のshファイルが
- 25. Linux:ファイルを作成する方法は?
- 26. Linux上でpyinstallerを使用してWindows実行ファイルを生成するには?
- 27. Linuxで自己完結型のPython実行ファイルを作成する
- 28. Python eggファイルをインストールせずに直接実行するには?
- 29. Linuxベースのplatofrm用のlabviewから実行ファイルを作成
- 30. LinuxでOpenNI用のJavaファイルをコンパイルして実行する方法
エントリポイントに '.py'拡張子を使用しないでください。ライブラリ/モジュールではなく*実行可能*です。 setuptools(setup.py)を使用している場合は、Pythonスクリプトをすべて実際に使用したい場合は、選択したモジュールで任意の関数を呼び出すエントリポイントを生成する作業を行うことができますライブラリは本質的にはそうですが、それはあなたが本当に必要としている、あるいはしたいことではないでしょう(そして、setuptoolsで生成されたエントリポイントはそれ自体がPythonスクリプトであり、シェルスクリプトではなくどこでもシェルスクリプトは必要ありません)。 –
ところで、これは非常にXY問題であると主張したいと思います(「私はXをやりたがっていますが、Yのやり方を尋ねています」 - 実行してPythonプログラムを実行するだけです'/ hello';シェルスクリプトが適切かつ適切な方法であれば、質問に答えた人にそれを指摘させてください。そのような仮定を質問自体に組み込む必要はありません。 –