Скопируйте не exe-файл на удаленную машину
Я использовал PsExec для копирования и запуска exe-файла на удаленной машине. Я также хочу скопировать xml-файл на удаленную машину. Я умею это делать
PsExec.exe -d -c someserver c:somefile.xml
вышеприведенная команда выдает ошибку о том, что система не может найти указанный файл, но добавляет xml-файл на удаленный сервер.
Знаете ли вы лучший способ копирования файлов на удаленный сервер.
Есть ли для этого PsTool?
Или вариант в PsExec ?
Изменить: (Ответить) Я узнал, что использование Powershell мы можем скопировать файл на удаленные машины, и это сработало.
4 ответов
Как вы можете прочитать из справки psexec
- c: скопируйте указанную программу в удаленную систему для выполнения. Если вы опустите эту опцию, приложение должно быть в системном пути на удаленная система.
таким образом, ваш xml-файл копируется на удаленный sys/USER:[domainname]username]tem и выполняется, это дает вам ошибку.
Если ваш xml является частью приложения, которое вы должны запустить на удаленном компьютере, одним из решений является сжатие приложения со всеми необходимые файлы в самораспаковывающемся exe, который запускает основную команду при извлечении.
Если вам просто нужно скопировать файл, почему бы вам не использовать простой скрипт, который отображает удаленную папку, а затем копирует файл? Что-то вроде:
NET USE \computername\sharename password /USER:[domainname\]username
xcopy .....
NET USE \computername\sharename /DELETE
PsExec не предназначен для копирования файлов на разных машинах, он может копировать только программу, которую он собирается запустить удаленно.
Если у вас есть доступ к удаленной машине, копия может быть выполнена путем запуска ' copy c:\somefile - ... xml \ \ remote-machine\Admin$ ' перед запуском PsExec
вы можете использовать этот шаблон с psexec для копирования любого расширения ...
psexec-d-i 2 \PC Name-U домен\username-P пароль cmd / c копировать \server\location\filename c:\xx\xx\xx
PS: обратитесь к коммутаторам PSEXEC, если вы не уверены в том, что-d и я делаем. Однако" 2 " - это идентификатор сеанса пользователя удаленного рабочего стола, который может изменяться при каждом создании нового сеанса удаленного рабочего стола.
это помогло мне скопировать мой exe-файл в c:\windows каталог (одна копия в одном домене):
PsExec.exe -d -c \remoteserver -u administrator -p password c:\executable.exe