Как поддержать соединение FTP

Можно использовать встроенный удар compgen получить список всей команды и всего использования псевдонимов compgen -ac. Любая команда, которая является также псевдонимом, будет дублирована в этом списке, таким образом, простое наивное решение будет состоять в том, чтобы искать дубликаты в выводе compgen -ac.

Однако дубликаты могут также появиться, если команда находится на пути дважды. Например, я имею /bin/which и /usr/bin/which так compgen -ac перечислит which дважды даже при том, что это не псевдоним.

Таким образом, то, что необходимо, должно получить все дубликаты от compgen -ac и сравните это со списком псевдонимов. Только дубликаты, которые являются также псевдонимами, являются теми псевдонимами, которые скрывают команды. Мы можем сделать это с comm(1) команда и с ударом обрабатывает замену.

comm -12 <(compgen -a | sort) <(compgen -ac | sort | uniq -d) 

compgen -a | sort список всех псевдонимов (отсортированный для comm). compgen -ac | sort | uniq -d список всех дубликатов из списка команд и псевдонимов. comm -12 выводы только те строки, которые характерны для обоих.

3
17.11.2013, 09:49
1 ответ

Здесь нет никакого абсолютного ответа, поскольку протокол FTP сам по себе не включает такой механизм.

Существует однако, команды протокола FTP без реальных значений на данной ситуации как "NOOP", "СПИСОК" или "CWD", который может использоваться для поддержания соединения FTP.

Таким образом, это до клиента само для реализации такого механизма с помощью этих "бессмысленных" команд для сброса таймеров тайм-аута на стороне сервера. Конечно, Вы, возможно, также должны были бы настроить их клиентский механизм для соответствия стороне сервера макс. значение времени простоя.

Чтобы дать Вам пример, известный Filezilla реализует такой механизм (см. в пункте меню "Edit"-> "Settings", затем на вкладке "Connection"-> "FTP"):

Filezilla Settings

Ответ на редактирование: Как сказано, только у развитого клиента ftp была бы такая функциональность. Клиент ftp по умолчанию, Windows и Linux одинаково, не может применить такой поддерживать поведение.

3
27.01.2020, 21:23
  • 1
    Большое спасибо ценилось, нахожу ли я метод для ftp команда. –  Mohammad Etemaddar 17.11.2013, 09:44
  • 2
    Какую систему Вы используете (чтобы иметь некоторую подсказку о ее клиенте ftp по умолчанию)? –  Ouki 17.11.2013, 12:24
  • 3
    я использую ftp.gigfa.com. Я соединяюсь с ним с помощью значения по умолчанию ftp команда. –  Mohammad Etemaddar 18.11.2013, 07:32
  • 4
    Удаленный конец не имеет значения очень. Если Ваша система является Windows, и клиент ftp является командой ftp по умолчанию: никакая удача здесь. Только у усовершенствованного клиента ftp была бы эта функция. –  Ouki 18.11.2013, 12:11
  • 5
    Моей ОС является Linux. –  Mohammad Etemaddar 18.11.2013, 16:56

Теги

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