Я должен удаленно соединиться со шлюзом (работающий над платформой Linux), внутри который у меня есть несколько исполняемых файлов (signingModule.sh
и taxModule.sh
). Теперь я хочу записать один сценарий в своем рабочем столе, который будет соединяться с тем шлюзом и работать signingModule.sh
и taxModule.sh
в двух различных терминалах.
Я записал ниже кода:
ssh root@10.138.77.150 #to connect to gateway
sleep 5
cd /opt/swfiscal/signingModule #path of both modules
./signingModule #executable
но через этот код я могу подключить свой шлюз, но после соединения со шлюзом ничего не происходит.
2-й код:
source configPath # file where i have given path of both the modules(configPath is placed in local machine)
cd $FCM_SCRIPTS # variable in which i have stored the path of modules
ssh root@10.138.77.150 'sh -' < signingModule #to connect and run one module (signingModule is placed in remote machine)
Как вывод этого я добираюсь: source: configPath: file not found
Помогите мне разрабатывающий это.Заранее спасибо.
Примечание:
Ошибка Вы получили средства, которые не делает файл configPath
, существует в папке, где Вы сделали команду source configPath
.
, Предполагающую что:
configPath
содержит операторы: #!/bin/bash export FCM_SCRIPTS=/path/on/remote/machine
/path/on/remote/machine
присутствует исполняемый файл signingModule
configPath
расположен в /path/on/local/machine
папка , Если эти предположения верны, необходимо создать на локальной машине простой сценарий /path/on/local/machine/remoteExecution.sh
:
#!/bin/bash
cd $FCM_SCRIPTS
./signingModule
и попытка:
cd /path/on/local/machine
ssh root@10.138.77.150 'bash -s' < <(cat configPath remoteExecution.sh)
, где -s
опция означает, что команды читаются из стандартного входа.