Как выполнить "загрузку модуля" в оболочке или Perl-скрипте (т.е. не в интерактивном режиме)
Я могу использовать команду "module load xyz" в интерактивном режиме, но при запуске из скрипта он говорит, что не может найти команду "module". Есть ли способ загрузки модулей в скрипт?
3 ответа
Запустите ваш bash-скрипт так:
#!/bin/bash -l
Обратите внимание, что модули, загруженные после этого с загрузкой модуля xyz, будут доступны только из файла скрипта.
Пытаться
source /etc/profile
Если это не сработает, скорее всего, у вас есть проблемы с псевдонимами. Вам может понадобиться
shopt -s expand_aliases
в вашем сценарии.
Если под модулями вы подразумеваете модули ядра Linux, посмотрите на modprobe
(или более низкий уровень insmod
). Обычно нет необходимости использовать псевдонимы (например, module
) что ваш дистрибутив Linux загружен в вашу оболочку.
(Например, у меня даже нет module
команда в моем дистрибутиве / установке, поэтому я не могу попробовать, чтобы увидеть, какие модули вы имеете в виду.)