Как изменить размер терминала пользователя Ubuntu


Изменить размер терминала BASH скриптом бывает нужно для того чтобы Desktop приложение правильно отрабатывало и отображалось на экране пользователя. Задать необходимый размер можно в качестве условия продолжения программы.


Изменяем размер терминала одной командой в bash


Сделать это можно следующей командой:

resize -s 20 80



Параметры задаются в количестве строк и столбцов. Первое значение относится к высоте терминала, второе к его ширине.


resize -s будет гарантировано корректно работать на рабочих станциях, использующих графическую оболочку GNOME. При использовании других сред рабочего стола положительный результат не гарантирован.

Варьируя значения параметров можно изменять размер терминала в режиме реального времени.

Изменить размер терминала bash


При выполнении команды определяется значение переменных, затем они экспортируются.

Если на рабочей станции пользователя используется какая-либо другая среда рабочего стола — можно обойтись без использования resize -s, а непосредственно передавать необходимые значения переменных, затем экспортируя их.

Код скрипта при этом становится несколько объёмнее, однако никаких трудностей при его написании также возникнуть не должно.



Как узнать текущий размер терминала


В системе хранится ряд определенных переменных, посмотреть их все можно введя в консоли символ $


Среди них будут переменные

$COLUMNS
$LINES

Именно в них задаются значения ширины и высоты окна терминала, и именно значения этих переменных переопределяются командой resize -s.



Значения параметров можно вывести следующим образом

echo $COLUMNS

echo $LINES

или

echo $COLUMNS X $LINES


Размер рядов и колонок неодинаков, поэтому ввод одинаковых численных значений квадратного терминала не даст.


Использоваться данные переменные могут в выражениях if; then в скриптах в тех случаях когда важно получить размер терминала, не меньше определенного размера для того чтобы информация отображалась корректно.



Рационально установить минимальный размер терминала пользователя при котором информация отображается верно в качестве необходимого условия выполнения программы, в противном случае можно либо принудительно изменять размер терминала либо выдавать предупреждение и рекомендацию сделать это самостоятельно.



Основное применение изменения размера терминала — пользовательские интерфейсы, любой из них представляет собой скрипт и определенный алгоритм, и используется функции и операторы (такие как case).

Сказать спасибо