シェルスクリプトの作業ディレクトリを変更する方法

シェルスクリプトの作業ディレクトリを変更する方法

相対ディレクトリでファイルを検索するPythonスクリプトがあります。例:Pythonスクリプトはにあります/home/username/projectname/。にあるPythonスクリプトに呼び出されたファイルがあります/home/username/projectname/subfolder

シェルでスクリプトを実行すると、python scriptname.py正常に実行されます。

ただし、スクリプトを起動サービスとして実行しようとしています。 Webminで設定していて、それを呼び出すためのシェルスクリプトを生成すると思います。起動スクリプトを使用してスクリプトを呼び出すには、次の作業を行います。

execute python home/username/projectname/scriptname.py

スクリプトは正常に起動しますが、相対ディレクトリのファイルにアクセスすることはできません。

私は相対パスを知るために起動スクリプトからPythonプログラムを呼び出すより良い方法があると思います。

ベストアンサー1

速くて汚い:

起動スクリプトでPythonスクリプトを実行するのではなく、cd最初に使用してください。

#!/bin/sh

cd /home/username/projectname &&
python ./scriptname.py

おすすめ記事