Passando parâmetros por arquivo de script de shell para esperar script

Passando parâmetros por arquivo de script de shell para esperar script

Preciso passar um parâmetro de um script shell na linha de comando do script ssh

por exemplo :

#!/usr/bin/expect
spawn ssh [email protected] "cm1+passingparameters.sh;cmd2"

meu script existente 123.shque está funcionando bem.

#!/usr/bin/expect

spawn ssh [email protected] "/pstools/85419/jre/bin/java -Xms1024M -Xmx1024M -Dhttps.protocols=TLSv1.2 -Djdk.tls.client.protocols=TLSv1.2 -jar /app1/non/psoft/85419/gu1/gust/classes/SVC_TestS.jar https://decorp6-- tst4.custhelp.com/services/rest/connect/v1.3/incidents userid password ssow.proxy.com port;cd /app01/nonhr/psoft/85419/gucq1/gecust;mail -s 'OTO' [email protected] < logs.txt"

expect "password"

send "mypassword\r"

interact

expect eof

Eu quero 2 scripts a.sheb.sh

a.shdeve ser o seguinte (observe a mudança no script original mencionado acima PASS b.sh after .jar)

#!/usr/bin/expect

spawn ssh [email protected] "/pstools/85419/jre/bin/java -Xms1024M -Xmx1024M -Dhttps.protocols=TLSv1.2 -Djdk.tls.client.protocols=TLSv1.2 -jar /app1/non/psoft/85419/gu1/gust/classes/SVC_TestS.jar PASS b.sh;cd /app01/nonhr/psoft/85419/gucq1/gecust;mail -s 'OTO' [email protected] < logs.txt"
expect "password"

send "mypassword\r"

interact

expect eof

b.shdeveria ser o seguinte

#!/user/ksh
 https://decorp6--tst4.custhelp.com/services/rest/connect/v1.3/incidents userid password ssow.proxy.com port

Responder1

EUpensarvocê está perguntando como inserir vários argumentos no javacomando remoto, que pode ser tão simples quanto

#!/usr/bin/expect

if {[llength $argv] == 0} {
  puts stderr "Usage: todo fixeme"
  exit 1
}

set the_args [join $argv]

spawn ssh [email protected] "/pstools/85419/jre/bin/java ... -jar /app1/non/psoft/85419/gu1/gust/classes/SVC_TestS.jar $the_args; ..."
...

E então você executaria o procedimento acima através de algo como:

$ whatyousaveditas https://decorp6--tst4.cu... user pass ...

informação relacionada