여기에는 읽기 전용 Bash 변수가 있습니다. 해당 변수를 설정 해제 할 수 없습니다.
$ echo $TMOUT
1800
해결 방법으로 해당 줄을 작성했습니다 (세션이 종료되지 않음).
#!/usr/bin/perl
$|++;
while (1) { print "\e[0n"; sleep 120; }
CentOS7 / RHEL7 저장소에 유사한 Perl 코드와 같은 공식 패키지 (rpm)가 있습니까? vim 편집기를 열고 싶지 않습니다. 명령을 원합니다.
답변
명령 행에서 perl 명령을 실행할 수 있습니다 …
perl -e '$|++; while (1) { print "\e[0n"; sleep 120; }'
또는 쉘에서 동일한 작업을 수행 할 수 있습니다 ( 예 sh
/ bash
예).
while sleep 120; do printf '\33[0n'; done
또는 다음을 사용할 수 있습니다 watch
.
watch -n 120 printf '\33[0n'
답변
이것을 .bash_profile의 시작 부분에 추가 하시겠습니까?
if [ ! -z "$TMOUT" ]; then
env -i bash --init-file ~/.bash_profile
fi
타임 아웃 판결에서 패배 한 결과로 오래된 오래된 세션을 남겨두면 시스템 관리자의 분노를 조심하십시오.
답변
여기에 일이있다
세션 변수가 “읽기 전용” 당신이에 의해 명령으로 현재 쉘 프로세스를 교체해야 “간부”
그래서, 질문에 대한 대답은이 :
$> exec env TMOUT=0 bash
그러나 더 높은 시간 초과 값을 설정하는 것이 좋습니다
$> exec env TMOUT=3600 bash
답변
왜 비 대화식 세션으로 전환하지 않습니까?
# TMOUT=0
-bash: TMOUT: readonly variable
# unset TMOUT
-bash: unset: TMOUT: cannot unset: readonly variable
# su
# export TMOUT=10
# unset TMOUT
#
답변
필자의 경우 /etc/profile.d/bash_autologout.sh에 정의되어 있습니다.
TMOUT=1800
readonly TMOUT
export TMOUT
그것을 찾기 위해, 나는했다 :
sudo find /etc/ -name "*" | xargs sudo grep "TMOUT" 2>&1 | grep -v "filter..."