in reply to Re^5: Running Multiple Commands using System
in thread Running Multiple Commands using System

Okay. Thanks for your elaborate explanation. But
system("sdb -d root on 'sdb -d shell; ls'");
the syntax used here is what I found to run multiple commands of shell by one system call. But only in this specific case it does not work.
system("sdb -d root on 'sdb -d shell; cd /opt; ls';bash ");
gives error of "root does not take more than one arguement" while the following system call runs fine.
system("sdb -d shell 'cd /opt; ls';bash ");
executing all the 3 shell commands sequentially in one child terminal. and running independently
system("sdb -d root on");
also works fine.

Replies are listed 'Best First'.
Re^7: Running Multiple Commands using System
by Corion (Patriarch) on Jul 02, 2014 at 10:30 UTC

    So, your problem is with the sdb program. It says that "sdb root" does not take more than one argument. But you are giving it two arguments, on and 'sdb -d shell; cd /opt; ls'. I'm pretty confident that your command line as you show it to us does not work outside of Perl either.

    This is not a Perl problem but a problem with the sdb program. I suggest you consult the documentation of the sdb program and/or ask the vendor of the program on how to proceed.