iptables 내용 출력을 clear로 갱신하다가 깜빡임을 줄이고 싶어 검색했더니 역시나 있었다.
http://unix.stackexchange.com/questions/81167/prevent-text-screen-blinking-when-doing-clear
가운데 CMD 부분에 명령을 넣으면 된다.
# flicker less refresh script. # http://unix.stackexchange.com/questions/81167/prevent-text-screen-blinking-when-doing-clear #!/bin/sh watchit() { HOME=$(tput cup 0 0) ED=$(tput ed) EL=$(tput el) ROWS=$(tput lines) COLS=$(tput cols) printf '%s%s' "$HOME" "$ED" while true do CMD="sudo iptables -L -n -v --line-numbers" ${SHELL:=sh} -c "$CMD" | head -n $ROWS | while IFS= read LINE; do printf '%-*.*s%s\n' $COLS $COLS "$LINE" "$EL" done printf '%s%s' "$ED" "$HOME" sleep 1 done } watchit top -b -n 1
종료하면 문자가 그대로 남아있는채로 커서가 올라가는 것으로 보아 화면전체를 지우기 보다는 바뀐것만 치환하는 느낌인데... 분석해 봐야 할 것 같다.