Я думаю, что у вас есть разные подкаталоги, в каждом из которых есть скрипт.sh.
Что-то вроде ${HOME}/version0_1/script.sh
, ${HOME}/johndoe/script.sh
, ${HOME}/version1_0/script.sh
.
Теперь вы хотите запустить правильный скрипт, используя параметр.
Вы можете использовать source
(который может быть сокращен до точки .
).Когда вам нужно вызвать только один скрипт, параметр подходит, когда вам нужно вызвать много других, рассмотрите переменную.
Всего один вызов
build(){
source ${HOME}/"$1"/script.sh;
}
build version1_0
Или
# When you need the parameter in other call to
build(){
source ${HOME}/"${buildversion}"/script.sh;
}
buildversion="version1_0"
Вы можете заметить, что я поместил версию в двойные кавычки.Возможно, кто-то создает subdir с пробелом типа ${HOME}/version0.2 beta 3/script.sh
.Я также должен поместить ${HOME}
в кавычки, но я думаю, что ваш системный администратор не будет ставить пробел в вашем homedir.