Як використовувати клавіші зі стрілками при введенні в термінал openssl на OS X?


1

При розробці для IMAP я часто вводжу сирі команди в підключення OpenSl IMAP, і я намагаюся з'ясувати, як зробити цей інструмент більш корисним. Підключаюся через

openssl s_client -connect imap.gmail.com:993 -crlf

(наприклад)

Але клавіші зі стрілками замість навігації друкують те, що я можу називати лише "дивними символами":

t login четстедман ^ [[D ^ [[D ^ [[D ^ [[D

(Це стрілка ліворуч)

В ідеалі я хотів би щось, що працює набагато більше як оболонка bash. Стрілка вліво йде вліво, ctrl + a йде до початку рядка, стрілка вгору йде до попереднього рядка.

Намагаючись з'ясувати, як отримати цю конфігурацію на openssl, а також досліджувати інші інструменти, які могли б зробити це краще. Я безумовно потребую щось низького рівня, хоча, враховуючи, що я налагоджую проблеми з закінченням рядків в iCloud в даний час.

Відповіді:


0

Ймовірно, це відбувається через спосіб спілкування. Протоколи, такі як IMAP, призначені для використання комп'ютерами, а не людьми, і тому вони регулярно ігнорують послідовності керування, такі як клавіші зі стрілками та клавіші Backspace. У мене була така ж проблема при роботі з HTTP-серверами; Мені потрібно отримати команду сервера саме так або… HTTP 400 (Поганий запит).

Моє рішення тут полягало в тому, щоб ввести дуже ретельно, або скласти запити в текстовому редакторі заздалегідь і копіювати і вставляти кожну команду в термінал - OpenSSL, у вашому випадку - вікно, як потрібно. Ви також можете скористатися редактором рядків, який приймає (і дозволяє редагувати) рядок вхідних даних за один раз, а потім відправляє всю лінію відразу на сервер, коли ви натискаєте return / enter. Однак, я не маю досвіду роботи з такими речами, і я не знаю, чи вони можуть бути зроблені для роботи з OpenSSL, не вдаючись до написання власного коду.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.