Интерфейс Sftp к Scp

Пребывание в ударе (или любая другая оболочка, если Вы отображаете подсказку независимо):

case $answer in
  [Yy]*) echo Ok;;
  *) echo "Can't you read? I said to say yes.";;
esac

Это принимает ответы как yn как да,  y (с начальным пространством) как не, и wlkjzuhfod как не, который не может быть оптимальным, но согласовывается с типичными приглашениями оболочки: это то, как rm -i, find -ok и другие делают это.

Это сторонится целой проблемы интернационализации: на других языках необходимо было бы перевести ожидаемые ответы. Затем нет никакого стандартного метода оболочки; можно обратиться к диалоговому окну, но затем сценарий потребует, чтобы это было установлено (это доступно во многих дистрибутивах, но не всегда устанавливаемое по умолчанию).

if dialog --yesno "Choose yes" 0 0; then …

7
13.08.2010, 22:00
5 ответов

Можно использовать fish (файлы, переданные по протоколу оболочки). Существуют различные клиентские реализации, но ни один не требует никакой поддержки сервера вне регулярного SSH.

8
27.01.2020, 20:16
  • 1
    Это точно, что я искал.Большое спасибо! –  Jordan S. Jones 12.08.2010, 01:10
  • 2
    хм какая-либо идея, как я могу установить это в человечности? когда я ищу пакет, я нахожу "Дружественную интерактивную оболочку. Рыба является оболочкой, приспособленной к интерактивному использованию. Его функции фокусируются на пользовательском дружелюбии и discoverability. Синтаксис языка является простым, но несовместимым с другими языками оболочки".. Это - то, о котором Вы говорите? –  phunehehe 15.08.2010, 19:20
  • 3
    @Phunehehe - Нет, это не то, о котором он говорит. То, к чему он обращается, является Протоколом. Некоторые приложения реализуют его, некоторые не делают. Для моего сценария я, оказалось, использовал lftp программа. lftp fish://username@host.name. –  Jordan S. Jones 16.08.2010, 22:15

Я использую Veam Быстрый SCP для этого. Это очень удобно при контакте с ESXI, так как то единственное имеет включенный scp, но это будет также иметь дело с любой scp-поддерживающей машиной.

3
27.01.2020, 20:16

Возможно, я смущен, но под чем Вы подразумеваете "sftp как интерфейс"? Просто получите/поместите файлы с помощью scp из командной строки.

Помещать нечто файла, из командной строки на Вашем хосте Linux, принимающем 'имя пользователя', существует как пользователь на маршрутизаторе:

$scp foo username@router:~

Это скопирует нечто файла в корневой каталог имени пользователя.

Получить файл от маршрутизатора, принимая файл находится в корневом каталоге пользователя 'имя пользователя':

$scp username@router:~/foo .

Это скопирует нечто файла от маршрутизатора до любого каталога, Вы находитесь в том, когда Вы выполняете команду.

Я надеюсь, что понял Ваш вопрос правильно.

Удачи.

1
27.01.2020, 20:16
  • 1
    То, что я означал говорить, является интерфейсом sftp, где Ваш "CD", "ls", и т.д. управляет, выполняются на удаленном сервере, разрешающем Вам получить/поместить файлы, не имея необходимость явно вводить каждый путь каждый раз. –  Jordan S. Jones 11.08.2010, 22:18

Клиентская программа как filezilla может сделать это также... тип соединения, который Вы указываете, 'sftp', который вводит в заблуждение, так как это на самом деле не требует sftp сервера, просто ssh доступ к машине.

1
27.01.2020, 20:16
  • 1
    Да, мой вопрос не был так конкретен, как это должно было быть. Это - реализация, которая произошла очень быстро, когда я начал использовать StackOverflow и как сайты :( Однако для моей конкретной ситуации, в то время как в оболочке, и я ввожу sftp user@my.router.domain Я получаю a sh: /user/libexec/sftp-server: not found ошибка. Filezilla является фантастическим предложением, однако я искал командную строку "интерфейс". Я обновлю вопрос соответственно. –  Jordan S. Jones 13.08.2010, 21:56
  • 2
    Никакие заботы. Здорово узнать о рыбе... не видел это прежде. бонусные очки –  gabe. 13.08.2010, 22:39

Можно использовать Полуночного Командующего, утилиту командной строки. Это знает SCP, FTP, это свободно, и это находится, вероятно, в диспетчере пакетов Вашего дистрибутива.

На Debian/Ubuntu, установка это с:

apt-get install mc -y

Выполните его с:

mc

Хит F10 Входит в выход

1
27.01.2020, 20:16

Теги

Похожие вопросы