Назад | Перейти на главную страницу

перенести файл из unix в windows?

Я хочу перенести файл с сервера unix на сервер Windows 2003, я загружаю copssh в Windows 2003, а openssh уже установлен в unix ... Я выполняю следующую команду: - scp -r /file_in_unix/ user@windows_hostname:\c:\\

на экране unix появляется следующий вывод: -

100% |***************************************************************| 562 00:00

но когда я иду посмотреть файл на диске c, я ничего не нахожу :(

(скопировано из моего ответа на вопрос, отправленного в SU по адресу https://superuser.com/questions/195596/transfer-file-from-unix-to-windows)

Путь назначения выглядит неправильно - для большинства оболочек unix косая черта является escape-символом, а не маркером пути, поэтому я предполагаю, что файл попал в домашний каталог пользователя SSH с нечетным именем файла.

IIRC copssh основан на cygwin, поэтому вам, вероятно, нужно запустить:

scp -r /file_in_unix/ user@windows_hostname:/cygdrive/c/

Альтернативой копированию в службу SSH на компьютере с Windows является использование клиента с графическим интерфейсом, например WinSCP в окне Windows, чтобы войти в систему на Unix-машине и перетащить файлы таким образом - хотя это не подходит, если вы пытаетесь автоматизировать процесс.

Если у вас есть привилегированный доступ на unix-машине (то есть вы являетесь или можете стать пользователем с помощью sudo или аналогичного root) и у вас установлена ​​соответствующая поддержка, вы можете просто скопировать файлы в общую папку Windows. Вы не говорите, какой Unix вы используете. Для Ubuntu и аналогичной проверки наличия поддержки и ее установки, если нет, можно выполнить с помощью sudo aptitude install smbfs, вы можете установить общий ресурс Windwos с помощью чего-то вроде sudo mount -tcifs //11.22.33.44//sharename /mnt/tmp -ousername=WindowsUserName (где 11.22.33.44 - это IP-адрес машины с Windows, в зависимости от настроек вашей сети вы можете обращаться к машине по имени, а не по адресу). Как только вы это сделаете, вы можете просто использовать основные инструменты управления файлами (cp, mv, ...), чтобы взаимодействовать с этим общим ресурсом Windows и вызывать umount /mnt/tmp когда вы сделали. Возможно, вы захотите выбрать более понятное имя точки монтирования, чем / mnt / tmp. Вы, конечно, можете оставить общий ресурс смонтированным, если передача данных должна быть автоматизированной / запланированной. Этот метод предполагает, что машина Unix может видеть общие файловые ресурсы машины Windows через любые механизмы межсетевого экрана, которые могут существовать между ними.

scp -r / file_in_unix / означает, что вы хотите скопировать содержимое каталога.

Возможно, вы хотите вместо этого написать scp / tile_in_unix user @ ....

Если вы хотели сначала скопировать содержимое каталога: вы проверили, пуст ли он?