web-dev-qa-db-ja.com

シェルスクリプトでpythonプログラムを実行する方法

pythonプログラムを書いて、python code(disk.py)と書いたので、このプログラムをpython disk.pyターミナルで動作しました。

シェルスクリプトを使用して実行したいと思います。

7
Beginner

./disk.pyとして実行できるようにするには、次の2つが必要です。

  1. 最初の行を次のように変更します:#!/usr/bin/env python
  2. スクリプトを実行可能にします:chmod +x disk.py
11
janos

シェルスクリプトは次のようになります。

#!/bin/sh
python disk.py
19
SHW

@SHWが述べたように、質問は実際にpythonプログラムをaシェルスクリプトで実行することについて尋ねます(python ./disk.pyを直接使用したスクリプト

したがって、@ SHW回答を拡張すると、シェルスクリプトは次のようになります。

#!/bin/bash
/usr/bin/python /absolute/path/to/your/disk.py

単なるpythonではなく/usr/bin/pythonに注意してください。絶対パスを使用すると、スクリプトがpythonを使用して正確に知ることができます(インストールされているpythonへの絶対パスを見つけるにはwhich pythonを使用します)。

disk.pyだけでなく、pythonスクリプトで絶対パスを使用する場合も同様です。私の場合、bashスクリプトからDjangoアプリを実行しようとしていたため、正しく実行するにはmanage.pyの絶対パスを追加する必要がありました。

また、bashスクリプトのヘッダーに関しては、#!/bin/bashに代わるものがいくつかあります。詳細については、 this の質問をご覧ください。

乾杯。

4
DarkCygnus