staging.inyokaproject.org

array farbig

Status: Gelöst | Ubuntu-Version: Kein Ubuntu
Antworten |

wal78

Anmeldungsdatum:
21. Oktober 2017

Beiträge: 28

Ich brauche hilfe, bei array bei an bestimmte variable farbig herausheben, code geht so

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
tib1=( ".----------------------.			$text1"
	   "| |'-.                 | "
	   "| |   '.               | "
	   "| |     '.  .------.   |			$text2"
	   "| |    _'  /  .--.  \  |"
	   "| |    \  |__|    |  | |			$text3"
	   "| |-'\  \        /  /  |"
	   "|     \  \      /  /   |			$text4"
	   "|      \-'     /  /    |"
	   "|             |  |     |"
	   "|             |__|     |			$frage1"
	   "|              __      |"	
	   "|             |__|     |			$frage2"
	   "'----------------------'" )

"bild","$text2" bis "$text4" > keine farbe, "$text1" > farbe \033[0;34m > Blau, "$frage1 > farbe \033[0;32m > Grun,"$frage2 > farbe \033{0;31m > Rot

track

Avatar von track

Anmeldungsdatum:
26. Juni 2008

Beiträge: 7174

Du wirst in diesem Fall wahrscheinlich die Farbcodes mit in die Textvariablen schreiben müssen ...

Überhaupt erscheint es mir eher sinnvoll, die 2 Komponenten erst beim printf- Befehl zusammen zu führen.
Dann sind sie unabhängig, und Du brauchst das Array nicht vor jedem Aufruf neu zu initialisieren:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# Dein Bildchen wie gehabt - nur ohne Texte:
tib1=( ".----------------------."
       "| |⤡                   |"
       "| |  ⤡                 |"
       "| |    ⤡               |"
       "| |   、──ᐠ   .------.   |"
       "| |⤢\  \   /  .--.  \  |"
       "|    \  \ |__|    |  | |"
       "|     \  \       /  /  |"
       "|      \__\     /  /   |"
       "|              /  /    |"
       "|             |  |     |"
       "|             |__|     |"
       "|              __      |"	
       "|             |__|     |"
       "'----------------------'" )

txt=Überschrift
txt[2]="\033[0;1;34mText 1 in blau\033[0m"
txt[10]="\033[0;1;33mDie Frage ist gelb\033[0m"
txt[12]='\033[0;1;31mSchluss ! in ! ROT !!!\033[0m'

for i in ${!tib1[@]}; do
    echo -e "${tib1[i]}\t\t${txt[i]}"               # immer die entsprechende txt-Zeile hinter der Bildzeile
done

LG,

track

wal78

(Themenstarter)

Anmeldungsdatum:
21. Oktober 2017

Beiträge: 28

OK 👍 Perfekt

track Danke

Antworten |