Сведения о вопросе

FUTER

06:40, 4th August, 2020

Теги

Можно ли скопировать файлы в сетевое место из скрипта или командной строки?

Просмотров: 634   Ответов: 9

Можно ли в Windows XP скопировать файлы в сетевое место из командной строки, пакетного файла или, еще лучше, скрипта PowerShell?

То, что привело меня на этот путь исследований, было попыткой опубликовать файлы в библиотеке документов WSS 3.0 с компьютера пользователя. Я не могу сопоставить диск с соответствующей библиотекой, потому что сайт WSS доступен только для аутентификации через NTLM на порту, отличном от 80 или 443. Я предполагаю, что я мог бы поочередно использовать веб-службы WSS для выталкивания файлов, но сейчас мне действительно интересно получить ответ на этот вопрос.



  Сведения об ответе

lourence

23:24, 11th August, 2020

Используя пакетный файл, вы можете как войти в ресурс, так и скопировать его:

Пакетный файл будет содержать следующее:

net use \\{dest-machine}\{destfolder} {password} /user:{username}
copy {file} \\{dest-machine}\{destfolder}

напр.

net use \\Development\myfolder mypassword /user:Administrator
copy newfile.c \\development\myfolder


  Сведения об ответе

SILA

22:18, 22nd August, 2020

Если вы имеете в виду windows box , просто используйте xcopy . Это довольно стандартно - иметь в наличии xcopy .

xcopy src \\dest-machine\shared-library-name\dest
xcopy \\src-machine\shared-library-name\dest src


  Сведения об ответе

SKY

14:14, 14th August, 2020

Powershell использует абстракцию поставщиков для обеспечения общего интерфейса в хранилищах данных. Они, похоже, придерживаются общего существительного "Item", поэтому вы можете получить полный список с man *item* . Если вы знаете другой способ копирования и иной работы с данными из хранилища, вы можете также использовать его, но использование cmdlets обеспечивает лучший подход "learn-once, use-often". В вашем случае вы могли бы:

Copy-Item test.txt -Destination \\dest-machine\share

Copy-item также поддерживает параметр-Credential, если он вам нужен.


  Сведения об ответе

VERSUION

08:15, 28th August, 2020

"Network Places" на самом деле не имеет API, это просто куча ярлыков, а общий ресурс SharePoint использует расширение Shell, если я правильно помню.

Все это говорит о том, что доступ к Sharepoint как файловой системе из PowerShell также требует расширения, поставщика SharePoint .


  Сведения об ответе

crush

00:30, 23rd August, 2020

вы можете использовать команды 'net' для аутентификации и последующего копирования файлов.

copy src \\dest-machine\shared-library-name\dest

Я не совсем уверен, как именно обрабатывать аутентификацию, если она необходима.


  Сведения об ответе

ЯЯ__4

12:43, 16th August, 2020

Из того, что я вижу, кажется, что невозможно напрямую access/ управлять сетевым местом из командной строки, будь то в PowerShell или в обычной командной строке ol.

@slipsec (#13899): Спасибо за предложение, но PowerShell не поддерживает номер порта в пути назначения больше, чем команда net use .

Поэтому лучшее, что я могу сделать в моей конкретной ситуации, это прикусить язык и купить что-то вроде WebDrive, чтобы включить отображение диска через WebDAV на нестандартных портах, или сделать какую-то другую конфигурацию (например, отдельное веб-приложение с другим адресом IP и заголовками хостов) в SharePoint, чтобы выставить сайт через NTLM на стандартный порт.


  Сведения об ответе

DO__IT

14:32, 26th August, 2020

Если это что-то, что вам нужно написать, вы должны рассмотреть NAnt .

Это в основном используется для построения сценариев, но это очень мощный и достаточно простой в использовании инструмент.

Есть также NAntContrib и nant ftp задачи ,которые должны помочь вам.


  Сведения об ответе

$DOLLAR

11:21, 19th August, 2020

Я могу ошибаться в этом, но я думаю, что ни решение robocopy Ника, ни решение команды копирования Натана не будут работать. Robocopy, похоже, хочет подключенный диск, что я не могу сделать, потому что он не работает на порту 80 или 443, и Windows не может обрабатывать путь, который включает порт в имя UNC-стиля:

copy src \\dest-machine:45000\shared-library-name\dest

Я также не видел задачи NAnt, которая могла бы справиться с этой ситуацией.

Я также знаю, что есть инструменты, которые позволят мне сопоставить диски WebDAV. Меня больше интересовало, есть ли какой-то способ использовать сетевые места, которые были созданы без использования GUI.


  Сведения об ответе

P_S_S

01:49, 13th August, 2020

Да, ты можешь. Я предлагаю использовать такой инструмент, как robocopy.


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться