[英]How can I load a module from inside a bash script?
我正在嘗試運行腳本。 基本上我需要加載一些模塊,然后執行一個 python 腳本。 所以像這樣的事情......
#!/usr/bin/env bash
module use /PATH/TO/MODULEFILE
module load MY_MODULE
python my_script.py
我遇到的問題是,每次嘗試執行腳本時,都會出現此錯誤 - “模塊:未找到命令”。 我不明白如何更改腳本來解決這個問題。 我能夠從 shell 運行模塊命令。 我還運行了“whereis -b 模塊”,我剛剛得到了“模塊:”。
我需要做什么才能從腳本內部加載這個模塊? 謝謝
您可以通過獲取模塊安裝的init
目錄中提供的python.py
初始化腳本,從您的 python 腳本啟用module
命令。
下面一段python代碼定義了module
功能,然后啟用了一個module
路徑並加載了一個module
:
#!/usr/bin/python
import os
exec(open('/PATH/TO/MODULES/init/python.py').read())
module('use', '/PATH/TO/MODULEFILE')
module('load', 'MY_MODULE')
如果你想在你的 bash 腳本中啟用該module
,它可以像使用不同的命令來運行腳本一樣簡單。 對我來說,將腳本script.sh
作為. script.sh
. script.sh
或 as ./script.sh
將正確加載模塊,但將其作為sh script.sh
運行將導致上述錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.