У мене виникає проблема, коли я намагаюся отримати розмір терміналу за допомогою скриптів. Як правило, я використовував би команду tput cols
всередині консолі, однак хочу виконати цю функцію шляхом суворого використання скриптів.
На сьогодні я можу виявити запущену консоль і отримати її шлях до файлу. Однак я намагаюся використовувати цю інформацію, щоб отримати ширину консолі. Я намагався використовувати команду tput
, але я досить новий в Linux / скриптах, тому не знаю, що робити.
Причиною цього є те, що я хочу мати можливість встановити запис крона, який так часто повідомляє консоль про свою ширину / стовпці.
Це мій код поки що:
tty.sh
#!/bin/bash
#Get PID of terminal
#terminal.txt holds most recent PID of console in use
value=$(</home/test/Documents/terminal.txt)
#Get tty using the PID from terminal.txt
TERMINAL="$(ps h -p $value -o tty)"
echo $TERMINAL
#Use tty to get full filepath for terminal in use
TERMINALPATH=/dev/$TERMINAL
echo $TERMINALPATH
COLUMNS=$(/home/test/Documents/get_columns.sh)
echo $COLUMNS
get_column.sh
#!/usr/bin/env bash
echo $(/usr/bin/tput cols)
Нормальний вихід TERMINAL
і TERMINALPATH
є , і , наприклад , &pts/terminalnumber
/dev/pts/terminalnumber
pts/0
/dev/pts/0
cron
робочих місцях є контрольні термінали.