Tiedän, että värillisen tekstin tulostamiseen kaiun avulla, esimerkiksi punaisella, koodi on: echo -e "\e[1;31m This is red text \e[0m"
ja tiedän, että tässä esimerkissä 31 on punaisen värinen koodi ja muiden värien lukumäärä on:
Black 0;30 Dark Gray 1;30 Blue 0;34 Light Blue 1;34 Green 0;32 Light Green 1;32 Cyan 0;36 Light Cyan 1;36 Red 0;31 Light Red 1;31 Purple 0;35 Light Purple 1;35 Brown 0;33 Yellow 1;33 Light Gray 0;37 White 1;37
ja taustaväreille numero on 40–47.
Kysymykseni on seuraava: mitä \e
ja [
ja m
(31 jälkeen) tarkoittavat tarkalleen tässä?
Luin man-sivulta, että \ e on paeta, mutta en ymmärtänyt, mitä se tarkoittaa.
Kommentit
vastaus
Ne ovat osa ANSI-pakosekvenssit tunnetaan myös nimellä ECMA-48 CSI-sekvenssit, jotka hyväksyttiin alun perin vuonna 1976
Tarkemmin sanottuna
on ” Ohjaussekvenssin esittelyohjelma ”
Kirjoita man console_codes
melkein missä tahansa * nix-jakelussa nähdäksesi koodit ja jotkut asiakirjat.
Kommentit
-
man 4 console_code
eiman console_code
: Ubuntuani - manuaalisen sivun nimi päättyy " s " joten " mieskonsolin_koodit " pitäisi tuoda oikea sivu.
Vastaa
Tarkat värikoodit määritellään alla-
Opening RED= "\033[31m" or "\e[1;31m" CYAN="\033[36m" or "\e[1;31m" Closing = "\033[m" or "\e[0m"
Joten pohjimmiltaan se on vain tapaa, jolla eri pääte tulkitsee värikoodeja, ja tekstität tekstisi näiden elementtien sisällä. Se on outo tapa saada päätelaite ymmärtämään mitä tarkoitat (kuten HexCodes tai Binary ..)
Vastaa
Löysin mukava selitys täällä (ainakin, mukava minulle : -) ). En ole varma, onko siitä hyötyä sinulle.
Aloita kirjoittamalla tämä konsolillesi:
echo "^[[0;31;40mIn Color"
Ensimmäinen merkki on pakomerkki, joka näyttää kahdelta merkiltä, ^ ja [. Tämän voi tulostaa painamalla CTRL + V ja sitten ESC-näppäintä. Kaikki muut merkit ovat tavallisia tulostettavia merkkejä, joten näet merkkijonon Väri punaisella. Tyyppi pysyy värissä, kunnes palaat takaisin kirjoittamalla tämän:
Ne ovat paikkakoodeja, jotka asettavat väritilat päätelaitteessa. Onko vain, kun tulostetaan tavallisilla merkeillä, ne näyttävät tältä.
Vastaa
\e
on Escape-merkin lyhenne. <ESC>[
ja m
ovat merkkejä ANSI-väriohjaussekvenssien alulle ja lopulle, jotka ovat ANSI-päätelaitteen ohjauksen osajoukko . Suurin osa niistä alkaa <ESC>[
, jota seuraa numero, jota seuraa kirjain, joka ilmoittaa mitä toimintoa ollaan toteuttamassa (esim. Siirrä kohdistin riville; tyhjennä rivin loppuun, palauta kohdistin tallennettuun sijainti jne.).
echo "She said \"Hi\""
Mitä tulee tähän tapaukseen (kysymyksesi ), sinun ' sinun on odotettava parempaa vastausta.