im copying multiple files to server Machine using PSEXEC,Calling Psexec is through perl file
my $exit_code5 = system("cmd /c c:\\PsExec.exe \\\\$host_name -u $user_name -p \ $pwd cmd /c xcopy \"\\\\$client\\c\$\\sif folder\\$val\" \"c:\\sif folder\\\" /O /X /E /H /K /Y /q");
sleep(20);
}
if($exit_code5!=0)
{
}
This command is working fine , but sometimes in batch executions it randomly fails
-----Copying files to BackUpFolder SiebsvrBackUp created in C Drive-----
PsExec v1.98 - Execute processes remotely
Copyright (C) 2001-2010 Mark Russinovich
Sysinternals - www.sysinternals.com
and will be in hang state... Is there any consistent way to perform multiple file copy using PSEXEC, Have tried COPY Command to, but no use
Try adding -d in your command since it doesn't wait for the process to terminate
https://technet.microsoft.com/en-us/sysinternals/bb897553.aspx
Related
Inorder to copy files from my local system to a remote desktop I use the following command
psexec \\192.168.xx.xx -u username -p password xcopy "C:\Users\User\Desktop\source" "\\192.168.xx.xx\C$\Users\User\Desktop\target" /S /Y /F /I
I am getting a this error
0 File(s) copied
`ƒ♦╝# zü┴k
xcopy exited on 192.168.xx.xx with error code 4.
I'm trying to run a program on a remote computer, but can't find the file. Whats wrong?
C:\temp\PSTools>psexec \\nb_IT10 -u godr\jak -p pimpam1+ c:\Program Files (x86)\Notepad++\notepad++.exe
PsExec v2.2 - Execute processes remotely
Copyright (C) 2001-2016 Mark Russinovich
Sysinternals - www.sysinternals.com
PsExec could not start c:\Program on nb_IT10:
The system cannot find the file specified.
You can do this with the following syntax, noting that the program you are trying to run should exist on the remote computer already with this syntax. If you only have Notepad++.exe installed locally, you'd have to use the "-c" parameter of psexec to copy that program to the server to run.
psexec \\nb_IT10 -u godr\jak -p pimpam1+ "C:\Program Files (x86)\Notepad++\notepad++.exe"
Full documentation for PSExec is available at the following link with examples PSExec - Windows Sysinternals
Check everywhere for a reason but nothing I found matches my specific problem. I have a program in C:\somefoldername\anothersubdirectory\andanother\ of the remote pc that I try to run using PSEXEC but it does not take. PSEXEC just does not want to run anything for me. Now if I run a ping or tasklist via psexec, it works, though obviously this is in PATH.
So I am putting in:
PSEXEC \\pcname C:\somefoldername\anothersubdirectory\andanother\program.exe
and nothing happens.
I even wrote a batch script that I tried running in two different ways.
Script is just:
#ECHO OFF
C:\somefoldername\anothersubdirectory\andanother\program.exe
EXIT
and I had it copied to the remote pc's main directory (maybe I need to put it in a folder) and then I tried running C:\batch.bat using:
PSEXEC \\pcname C:\batch.bat
I also tries running:
PSEXEC \\pcname -c \\servername\batch.bat
so it copies it over to PATH.
Neither worked.
Does any program I try to run via PSEXEC have to be in the remote pc's path?
I do have to admit that I have not done running an EXE remotely, but I have written lengthier scripts using psexec that use batch file on a server without any hiccups.
What is weird to is that the program I run has parameters and I task that runs through it, so I first taskkill it remotely, then I PSEXEC the SAME EXACT EXE as:
psexec \\pcname C:\...\program.exe -a -few -parameters ODBC
and that works. When I try to open just program.exe on its own, nope doesn't take.
I also did try psexecing iexplore.exe and that didn't work either.
So gotta use the -i option. In addition to that, gotta use -p + -u or -s to load system hardware dependent gui. This is why large portions of the gui was missing, or I assume why.
Can you please try this format
psexec \\machineName -u username -p password /accepteula -h cmd /c
C://somefoldername//anothersubdirectory//andanother//program.exe >>log.txt
More Clearly
Download the PSEXEC tool zip file in your user machine and unzip it.
Open command prompt and go to the psexec path.
In my machine it is: D:\PsTools
Run following command line
Syntax:
D:\PsTools> psexec \\ip_address -u username -p Password cmd /c executablename arguments >> test.log
i had used a batch cmd (xxx.bat) to execute a psexec function as follows:
C:\psexec.exe \192.168.xxx.xx -u server1\admin -p password C:\xxx.bat
the above batch file can run successfully to remote execute file.
but i found that there are many cmd.exe and psexec.exe process in task manager, that the batch file cannot kill process after execute.
do you know how to kill cmd.exe and psexec.exe process after execute ?
thanks
Joe
I'm sure there's a better way, but personally, I do this using pskill, e.g.:
pskill.exe \\\\192.168.x.x -u user -p pass -t <imagename>
You can find the name of the executable that you want to kill using the pslist command, also in the pstools toolset.
Why doesn't this work? I want to copy the file to the remote machine and run it.
psexec \\epo-test -c C:\temp\Avmr64.msi /Silent
Heres the error I get
PsExec could not start Avmr64.msi on epo-test:
The system cannot find the file specified.
I am trying to copy Avmr64.msi over to epo-test and run a silent install but I get this
PsExec could not start Avmr64.msi on epo-test:
The system cannot find the file specified.
Any help would be great.
For those that are interested heres the answer
psexec -u domain\username \\system -s -i -d msiexec.exe /i "\\share\folder\msifile" /qb
I think what you're trying to run here is "/Silent". Try instead:
psexec \\epo-test -c C:\temp\Avmr64.msi "C:\temp\Avmr64.msi /Silent"
or something in that fashion.
Try the below ( untested ):
psexec \\epo-test -c C:\temp\Avmr64.msi "msiexec /i /passive Avmr64.msi"
http://forum.sysinternals.com/topic2542.html