Как вызвать скрипт ksh в скрипте bash?

Я написал скрипт, который автоматически устанавливает Microstrategy в Amazon Linux 2.0.

В моем основном скрипте я называю скрипт установки Microstrategy, который находится в / bin / ksh, а мой в / bin / bash

mstr_install.sh выглядит следующим образом:

#!/bin/bash
#DATE 22-FEB-2019
#DISCRIPTION: IT will Install MSTR-11.1 with Silent Options using optins.txt file
DATE=$(date +"%Y-%m-%d_%T")
PATH="/app/soft/Installations/QueryReportingAnalysis_Linux/"

/usr/bin/mv "$PATH"options.txt "$PATH"options_backup."$DATE"
/usr/bin/cp /app/automation/mstr/options.txt  "$PATH"
/usr/bin/chmod 777 "$PATH"options.txt

cd "$PATH"

bash setup.sh -silent -options options.txt 

exit

и setup.sh - скрипт поставщика, строка которого равна

 #/bin/ksh

Я запускаю свой скрипт, как показано ниже:

#sh -x mstr_install.sh

и получение следующих ошибок:

[root@a1-m022mstiap01 mstr]# sh -x mstr_install.sh
++ date +%Y-%m-%d_%T
+ DATE=2019-07-25_07:59:35
+ PATH=/app/soft/Installations/QueryReportingAnalysis_Linux/
+ /usr/bin/mv /app/soft/Installations/QueryReportingAnalysis_Linux/options.txt /app/soft/Installations/QueryReportingAnalysis_Linux/options_backup.2019-07-25_07:59:35
+ /usr/bin/cp /app/automation/mstr/options.txt /app/soft/Installations/QueryReportingAnalysis_Linux/
+ /usr/bin/chmod 777 /app/soft/Installations/QueryReportingAnalysis_Linux/options.txt
+ cd /app/soft/Installations/QueryReportingAnalysis_Linux/
+ /usr/bin/ksh ./setup.sh -silent -options options.txt
./setup.sh[879]: basename: not found [No such file or directory]
./setup.sh[882]: dirname: not found [No such file or directory]
./setup.sh[883]: cd: bad directory
./setup.sh[408]: uname: not found [No such file or directory]
Checking for running instances..../setup.sh[866]: ps: not found [No such file or directory]
../setup.sh[82]: cat: not found [No such file or directory]
...done.
./setup.sh[466]: mkdir: not found [No such file or directory]
Unable to check the Kernel size
+ exit
[root@a1-m022mstiap01 mstr]#

Это очень запутанная проблема, дайте мне знать, если что-то упущено упомянуть.

Спасибо Сантош Г.

0
задан 25 July 2019 в 11:06

1 ответ

Это неправильно:

bash setup.sh -silent -options options.txt 

При помощи "удара" для запуска сценария Вы пропускаете хижину.

Я предположил бы, что необходимо сделать это:

./setup.sh -silent -options options.txt 

(с исполняемым набором битов) или

ksh setup.sh -silent -options options.txt 

===

Это - плохое поведение:

 PATH="/app/soft/Installations/QueryReportingAnalysis_Linux/"

Я использовал бы определенное имя переменной для этого, которое не является тем же как переменной среды. Выполнение его как этот возвратится, чтобы укусить Вас.

3
ответ дан 23 October 2019 в 09:07

Другие вопросы по тегам:

Похожие вопросы: