Как использовать приложение xmessage внутри сценариев оболочки —

Если вы потратили значительное количество времени на написание сценариев для сред Bash или tcsh, то вы, скорее всего, использовали команду echo для передачи данных пользователю. Эта команда может отображать как переменные среды, так и сообщения, но есть альтернатива, если вы просто пытаетесь отправить сообщение пользователю, если вы пишете, скажем, скрипт установки. Эта альтернатива позволяет вашему сообщению появляться в окне, которое значительно более удобно для пользователя. Это также должно казаться более современным во многих обстоятельствах.

Технически команда xmessage может дополнительно использоваться для передачи переменных окружения пользователю. Синтаксис идентичен echo, поэтому, если вы уже привыкли использовать эту команду, у вас не должно возникнуть дополнительных трудностей с использованием xmessage вместо него.

Метод 1: Использование команды xmessage вместо эха

Хотя вы можете использовать эти команды в диалоговом окне запуска, открытом, удерживая клавишу Windows и нажимая R или даже приглашение CLI, они наиболее полезны внутри скрипта. Скажем, вы хотите приостановить сценарий установки и предложить пользователю ввести данные. Добавьте эту строку в ваш скрипт:

xmessage Нажмите кнопку «ОК», чтобы продолжить.

Когда ваш скрипт выполняется, вы создадите диалоговое окно для пользователя.

xmessagea

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

xmessageb

Метод 2: Создание кнопок с xmessage

Программисты сценариев могут использовать xmessage для создания кнопок для выбора пользователем. Учитывая следующую строку:

xmessage «Кто-нибудь меня слышит?» — кнопки да, нет

xmessagec

Текст, отображаемый в поле, заключен в кавычки. Затем команда кнопок тэка имеет после нее метки кнопок, разделенных запятыми. Выходные значения равны 100 плюс количество нажатых кнопок, так что можно узнать, какую из них выбрал пользователь. Вы можете создать дополнительные кнопки помимо двух основных, вот так:

xmessage «Помните это приглашение?» — кнопки Abort, Retry, Fail

xmessaged

Это облегчает написание скриптов Bash и tcsh для тех, кто не хочет работать с терминалом.

Ссылка на основную публикацию
Adblock
detector