Periodically, the first iteration is interrupted, but the second iteration pass

The same command does not work on the first iteration, but passes the second iteration. Sometimes it passes in both iterations. $ssh is a Net::SSH::Expect object. Any idea on this weird behavior?

 $ssh = Net::SSH::Expect->new( host => "$host", password => "$pass", user => "$id", raw_pty => 1, timeout => 50 ); 

Code snippet:

 &Test("Create exports on Sonas------ No Kerberos"); $no_of_exports=2; my $fs = "/ibm/gpfs0/"; while($no_of_exports) { my $share_name = &get_share_name(); my $path="$fs" . "$share_name"; $cmd="ssh mgmt001st001 mkexport $share_name $path --nfs 'client002\\\\(rw,no_root_squash\\)'"; print "CMD: $cmd"; $out=$ssh->exec("$cmd"); print $out; --$no_of_exports; } 

Conclusion:

 Test 02 : Create exports on *Sonas*------ No Kerberos CMD: ssh mgmt001st001 mkexport kas41535108 /ibm/gpfs0/kas41535108 --nfs 'client002\\ (rw,no_root_squash\)' --nfs 'client002\\(xport kas41535108 /ibm/gpfs0/kas41535108 > rw,no_root_squash\)' bash: -c: line 0: syntax error near unexpected token `(' bash: -c: line 0: `mkexport kas41535108 /ibm/gpfs0/kas41535108 --nfs client002\\(' [ root@ganesha36 ~]# [ root@ganesha36 ~]# CMD: ssh mgmt001st001 mkexport kas219760489 /ibm/gpfs0/kas219760489 --nfs 'client002\\ (rw,no_root_squash\)' 89 --nfs 'client002\xport kas219760489 /ibm/gpfs0/kas2197604 > \(rw,no_root_squash\)' EFSSG0019I The export kas219760489 has been successfully created. EFSSG1000I The command completed successfully. 
+4
source share
1 answer

The error message is right here. Bash is suffocating because the token ( is unexpected. You need to add two more backslashes where you have four of them, so

 $cmd="ssh mgmt001st001 mkexport $share_name $path --nfs 'client002\\\\(rw,no_root_squash\\)'"; 

becomes

 $cmd="ssh mgmt001st001 mkexport $share_name $path --nfs 'client002\\\\\\(rw,no_root_squash\\)'"; 
0
source

All Articles