Подтвердить что ты не робот

Scp дает "не обычный файл"

У меня проблема при использовании scp в Linux, в нем говорится "не обычный файл". Я смотрел на другие вопросы/ответы об этом, но я не могу понять, что неправильно... Я написал:

scp [email protected]:/home/pictures/file.fits .

скопировать file.fits из [email protected], /home/pictures в текущий каталог. Я также пробовал без использования /home/, но он не сработал ни...

Вы понимаете, что неправильно?

4b9b3361

Ответ 1

Я только что проверил это и нашел по крайней мере 3 ситуации, в которых scp вернет not a regular file:

  • Файл на самом деле является каталогом
  • Файл - это именованный канал (a.k.a. FIFO)
  • Файл - это файл устройства

Вероятно, случай №1. Если вы хотите передать всю структуру каталогов с помощью scp, используйте параметр -r для указания рекурсивной копии.

Ответ 2

"/home/pictures/file.fits" должен указывать фактический объект файловой системы на удаленном сервере. Если это не так, scp выдало бы другое сообщение об ошибке.

Я вижу, что FITS формат изображения. Я полагаю, что "/home/pictures/file.fits" - это имя каталога на удаленном сервере, содержащего файлы FITS или что-то в этом роде.

Чтобы скопировать каталог с scp, вы должны указать флаг "-r":

scp -r [email protected]:/home/pictures/file.fits .

Ответ 3

Один из способов этой ошибки может возникнуть, если у вас есть пробел перед первым путем, как показано ниже:

scp [email protected]: /path/to/file  /path/to/new/file                            ^

Чтобы исправить, просто откройте пробел:

scp [email protected]:/path/to/file  /path/to/new/file

Ответ 4

Это не работает, потому что вам нужно точное имя скопированного файла; Поэтому используйте эту команду следующим образом:

scp [email protected]:/home/pictures/file.fits ./file.fits

Вы также можете переименовать свой файл следующим образом:

scp [email protected]:/home/pictures/file.fits ./newNameFile.fits

Ответ 5

простые шаги, которые нужно выполнить

1) scp -r user @host: /var/www/html/projectFolder/var/www/html/localsystem-project-folder

2) scp -r user @host: /var/www/html/projectFolder/filename.php/var/www/html/localsystem-project-folder/

здесь -r для рекурсивного обхода, директор поможет вам без ошибок.