Bash에서 깜박이는 텍스트를 만드는 방법은 무엇입니까?

Bash에서 깜박이는 텍스트를 만드는 방법은 무엇입니까?

printf "\e[41mend==>\e[m $i아래 스크립트에서 " " 명령 출력에서 ​​"end"라는 단어를 깜박이게 하려면 어떻게 해야 합니까?

#!/bin/bash
in=path_to_my_folder
for i in $(cat ${in}/file.txt); do
Command 1;
Command 2;
.
.
.
.
Command N;
sleep 60
echo "Review command stats summary"
printf "\e[41mend==>\e[m $i "

done

답변1

이를 깜박임 패턴이라고 합니다.

터미널이 이를 지원하는 경우 구문은 다음과 같습니다.

echo -e "Normal \e[5mBlink"

답변2

Bash에서 다음과 같은 코드를 적용할 수 있습니다.

#!/bin/bash

DATA[0]="     _/  _/    _/                            _/    "
DATA[1]="  _/_/_/_/_/  _/_/_/      _/_/_/    _/_/_/  _/_/_/ "
DATA[2]="   _/  _/    _/    _/  _/    _/  _/_/      _/    _/"
DATA[3]="_/_/_/_/_/  _/    _/  _/    _/      _/_/  _/    _/ "
DATA[4]=" _/  _/    _/_/_/      _/_/_/  _/_/_/    _/    _/  "

# virtual coordinate system is X*Y ${#DATA} * 5

REAL_OFFSET_X=0
REAL_OFFSET_Y=0

draw_char() {
  V_COORD_X=$1
  V_COORD_Y=$2

  tput cup $((REAL_OFFSET_Y + V_COORD_Y)) $((REAL_OFFSET_X + V_COORD_X))

  printf %c ${DATA[V_COORD_Y]:V_COORD_X:1}
}


trap 'exit 1' INT TERM
trap 'tput setaf 9; tput cvvis; clear' EXIT

tput civis
clear

while :; do

for ((c=1; c <= 7; c++)); do
  tput setaf $c
  for ((x=0; x<${#DATA[0]}; x++)); do
    for ((y=0; y<=4; y++)); do
      draw_char $x $y
    done
  done
done

done

원천http://wiki.bash-hackers.org/scripting/terminalcodes

관련 정보