Rhetorical Question: What's different between the two examples? My Answer: You lost your quote marks around the command being sent to cmd /k, so the && was being processed by the system-level cmd.exe rather than the embedded one.
Here, I will use the qq{} double-quote notation to nest the quotes, so interpolation will still happen properly:
my $cmd = "perl Perl_Ex_1.pl"; system(qq{start cmd /k "cd c:\PerlExamples && $cmd"});
Thus, system runs the whole command (everything within the qq{}), and cmd /k runs everything in the normal quote characters (so both the cd and the $cmd).
update: edited first paragraph for clarity
In reply to Re: How to execute multiple commands through perl script
by pryrt
in thread How to execute multiple commands through perl script
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |