1

При использовании SCP для копирования с удаленного хоста на локальный (например, scp -v foo-host:/source/path dest ) я смотрю подробный вывод и замечаю, что это команда, отправленная через SSH:

debug1: Sending command: scp -v -f /source/path

Я не могу придумать причину, по которой SSH внедрил бы этот флаг, и при этом он не обнаружен в моей man-странице моей OS X (так что это команда BSD и все еще часть OpenSSH). Я не могу найти документацию по этому вопросу в любом месте. У меня нет псевдонима для этого.

Почему этот флаг добавлен, что его добавляет и что он делает?

1 ответ1

2
debug1: Sending command: scp -v -f /source/path

Это команда, которую ваш локальный процесс scp запрашивает на удаленном сервере. Scp работает, запуская еще одну копию scp на удаленном хосте. Два экземпляра scp связываются друг с другом для выполнения передачи файлов - один отправляет файлы, а другой получает их.

«-f» - это флаг, который сообщает scp что он работает как удаленный экземпляр, и что он должен отправить файл, указанный в командной строке. С другой стороны, «-t» говорит, что это удаленный экземпляр, который должен получать файлы.

Флаги не задокументированы, потому что они не предназначены для использования пользователями. Вот страница, описывающая протокол scp, если вам интересно.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .