Estou com um problema em que estou tentando obter o tamanho de um terminal usando scripts. Normalmente eu usaria o comando tput cols
dentro do console, no entanto, quero conseguir esse recurso usando estritamente scripts.
A partir de agora, sou capaz de detectar o console em execução e obter o caminho do arquivo. No entanto, estou lutando para usar essas informações para obter a largura do console. Eu tentei usar o comando tput
, mas sou bastante novo no Linux / scripts, portanto, realmente não sei o que fazer.
A razão para fazer isso é que eu quero poder configurar uma entrada cron que notifique o console de sua largura / colunas de vez em quando.
Este é o meu código até agora:
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_columns.sh
#!/usr/bin/env bash
echo $(/usr/bin/tput cols)
A saída normal de TERMINAL
& TERMINALPATH
are e , por exemplo &pts/terminalnumber
/dev/pts/terminalnumber
pts/0
/dev/pts/0
cron
empregos tivessem terminais de controle.