Изменение f$mode() в сеансе «ДРУГОЕ» в openvms

Я хочу автоматически войти в систему openvms, используя SSH, а затем выполнить удаленные команды на сервере. Putty позволит мне сделать это, потому что f$mode() — это «BATCH», но с любой библиотекой SSH, которую я использовал, f$mode — «OTHER», и это создает ошибки в моем login.com.

Знаете ли вы какую-либо команду, доступную для изменения режима f $ после подключения? Я хотел бы изменить его с «ДРУГОЕ» на «ПАРТИЯ», чтобы затем я мог правильно выполнить свой login.com из программного обеспечения, подключающегося к хосту.


person RitonLaJoie    schedule 04.01.2012    source источник
comment
Похоже, он возвращает правильное значение для отсоединенного процесса. Есть ли причина, по которой вы не можете изменить свой LOGIN.COM для обработки обоих значений?   -  person HABO    schedule 05.01.2012


Ответы (1)


Когда я использую Putty для подключения к OpenVMS, мой f$mode — «ИНТЕРАКТИВНЫЙ». Я немного удивлен, что вы получаете BATCH... возможно, это зависит от того, какую реализацию SSH вы используете в VMS (например, HP TCPIP Services или Multinet).

Сказав это, вызов f$mode() указывает, какой процесс запущен для обработки вашего SSH-клиента, поэтому невозможно превратить ПАКЕТНЫЙ процесс в ИНТЕРАКТИВНЫЙ процесс.

В нашем sylogin.com мы обнаруживаем SSH-терминалы, проверяя 2 вещи... является ли терминальное устройство устройством «FTA», и если да, установлен ли для него атрибут SECURE. На этом этапе я укажу, что мы используем службы TCPIP для SSH.

DCL для проверки,

$, если f$extract(0,3,term) .nes. «ЗСТ», затем выход! SSH-терминалы — это FTA-устройства.

$ если .не. f$getdvi(term,"TT_SECURE"), затем выйдите! но так же и Decterm, поэтому проверьте атрибут SECURE термина

$! если код попадает сюда, скорее всего, у вас есть SSH-соединение

person ChrisB    schedule 05.01.2012