GNU/Linux >> Znalost Linux >  >> Ubuntu

Změnit barvu textu výstupu na příkazovém řádku?

Předpokládejme, že mám php soubor a chci změnit barvu textu svého výstupu pro aplikaci založenou na konzole…

<?php
$prompt = "What Is Your Name: ";
echo $prompt;
$answer =  "You Entered: " . rtrim( fgets( STDIN ));
echo $answer;
?>

Chci změnit barvu textu $answer .

Je to možné? Pokud ano, jak to mohu udělat?

Přijatá odpověď:

Nyní můžete v Ubuntu 16.04 používat 24bitové true color v terminálu

  • Sekvence escape v popředí je ^[38;2;<red>;<green>;<blue>m
  • Sekvence escape na pozadí je ^[48;2;<red>;<green>;<blue>m
  • <red> <green> <blue> rozsah od 0 do 255 včetně.
  • Escape sekvence ^[0m vrátí výstup na výchozí.

Viz Tabulka barevných kódů RGB

Ukázka 24bitové skutečné barvy ve skriptu:

Zde je upravený skript pro vytvoření barevného výstupu.

<?php
$prompt = "What Is Your Name: ";
echo $prompt;
$answer =  rtrim( fgets( STDIN ));
echo "\033[38;2;0;102;0m You \033[38;2;255;0;255m Entered: \033[38;2;255;255;0m $answer \033[0m \n";
?>

Ukázkový výstup výše uvedeného skriptu:


Ubuntu
  1. Jak přiřadit výstup příkazu proměnné shellu?

  2. Jak změnit zvukový výstup na hdmi z příkazového řádku?

  3. Změnit zdroje softwaru z příkazového řádku?

  1. Nastavte nebo změňte časové pásmo pomocí příkazu set-timezone

  2. Jak připojit výstup do souboru?

  3. Jak přesměrovat výstup příkazu do souboru, když příkaz vyzve uživatele k zadání?

  1. Výstup „posledního“ příkazu?

  2. Přesměrovat výstup příkazu v „příkazu času“?

  3. Jak změnit výzvu terminálu na něco jednoduchého?