How to set env variables and run multiple commands with PsExec?

How can I run multiple commands with PsExec, and how can I export environment variables?

I can run two commands by doing the below, but when I try to export an environment variable the second command errors out.

Running two commands:

psexec \\servername cmd /c p4 info & dir

^ This works

Trying to export env variable and then run another command:

psexec \\servername cmd /c set P4PORT=xx.xxx.xx.xx & p4 -c client -P ################## -u user diff -f //dir/dir2/dir3/...

^ This errors out on the second command, it complains about the client spec name I’m passing in, but it runs fine if i run just the second command. It’s like the first command throws off the second.

Thanks!

Answer

I believe you will find the second command is running on the local machine, not the remote one. You need to use quote marks like this:

psexec \\servername cmd /c "p4 info & dir"

Attribution
Source : Link , Question Author : Community , Answer Author : Harry Johnston

Leave a Comment