У меня есть сервер Tectia SSH в среде Windows.Когда я использую sftpg3 -B cmd.txt username@host
, это прекрасно работает.Единственная проблема заключается в том, что он не позволяет мне выполнять файлы удаленно, он только позволяет мне перемещать файлы.Он читает команды из cmd.txt, но так как я не могу выполнить что-либо, он игнорирует команды.
Хорошо, когда я делаю то же самое, но использую sshg3, он вообще не распознает флаг -B.
SSHG3 -B cmd.txt username@host
cmd.txt 'не распознается как внутренняя или внешняя команда, работающая программа или пакетный файл.
У меня естьпопытался поместить -B "cmd.txt"
Я попытался просто поместить содержимое cmd.txt в тот же сценарий вместо размещения их в cmd.txt и избавиться от -B
, но он не запускает ихТак или иначе.
В документах не так уж много информации.Все, что он говорит, это использовать -B для пакетной обработки.
Содержимое cmd.txt:
D:
cd Library
cd Backup
parseLibrary.cmd
exit
Попытка sshg3 войти в хост, перейти к пути и запустить пакетный файл на этом хосте.Есть идеи?
-B, --batch-mode Использует пакетный режим.Сбой аутентификации, если требуется взаимодействие с пользователем на терминале.
Для использования пакетного режима необходимо предварительно сохранить ключ хоста сервера на клиенте и настроить неинтерактивный метод аутентификации пользователя (например, host-основанная на аутентификации или аутентификации с открытым ключом без ключевой фразы).
Используется аутентификация с открытым ключом, на терминале не требуется никакого взаимодействия с пользователем.
Заметил это в документации по sftpg3
-B [- |batch_file]
Опция -B - позволяет читать со стандартного ввода.Эта опция полезна, когда вы хотите запускать процессы с помощью sftpg3 и перенаправлять каналы stdin.
Определяя имя batch_file в качестве атрибута, вы можете выполнять команды SFTP из данного файла в пакетном режиме.Файл может содержать любые разрешенные команды SFTP.Описание команд см. В разделе «Команды».
Для использования пакетного режима необходимо предварительно сохранить ключ хоста сервера на клиенте и настроить неинтерактивный метод аутентификации пользователя (дляНапример, аутентификация на основе хоста или аутентификация с открытым ключом без ключевой фразы).
Я предполагаю, что пакетный файл отличается от пакетного режима?
* Я понял это.Вы должны использовать флаг -B для каждой команды, которую хотите выполнить.