У нас есть переменная Bash только для чтения. Мне не разрешено сбрасывать эту переменную.
$ echo $TMOUT
1800
В качестве обходного пути я написал эти строки (чтобы моя сессия не выходила)
#!/usr/bin/perl
$|++;
while (1) { print "\e[0n"; sleep 120; }
Существует ли официальный пакет (rpm), который делает подобное (например, код Perl) в репозитории CentOS7 / RHEL7? Я не люблю открывать редактор vim, я хочу команду.
bash
rpm
repository
timeout
Иванов
источник
источник
cat
когда вы уходите от сеанса. А потом ^ C это по вашему возвращению.exec env TMOUT=0 bash
Ответы:
Вы можете выполнять команды Perl из командной строки ...
perl -e '$|++; while (1) { print "\e[0n"; sleep 120; }'
или вы можете сделать то же самое в shell (a
sh
/bash
пример):while sleep 120; do printf '\33[0n'; done
Или вы можете использовать
watch
:watch -n 120 printf '\33[0n'
источник
printf '\33[0n'
? я знаю , что командная строкаprintf
является. а что печатается?\33
это условное обозначение для escape-ключа,<esc>[0n
это не известный управляющий код ANSI, я предполагаю, что это была опечатка, которая должна была<esc>[0m
сбрасывать цвет терминала для приложений / Terminal / tty, которые поддерживают escape-коды ANSI.Добавить это в начало вашего .bash_profile?
Остерегайтесь гнева сисадминов, если вы оставляете запущенные сеансы gazillion в результате нарушения их правил тайм-аута.
источник
Дело в том, что
когда переменная сеанса «Только для чтения», вы должны заменить текущий процесс оболочки командой «exec».
Итак, ответ на ваш вопрос:
Но я рекомендую установить более высокое значение тайм-аута
источник
Почему вы не переходите на неинтерактивный сеанс?
источник
В моем случае это определяется в /etc/profile.d/bash_autologout.sh:
Чтобы найти это, я сделал:
источник