Piszę skrypt Bash, który drukuje tekst na ekranie:
echo "Some Text"
Czy mogę sformatować tekst? Chciałbym, żeby to było odważne.
bash
console
formatting
echo
JamesRat
źródło
źródło
tput smul
tput
to świetne polecenie z dużą ilością poleceń do wielu różnych zadań.motd
plikiem. Jak / gdzie miałbym zdefiniować zmienne$bold
i$normal
w tym przypadku?Aby zastosować styl do łańcucha, możesz użyć polecenia takiego jak:
Wyjaśnienie:
-e
Opcja oznacza, że znaki specjalne (odwrócone) zostaną zinterpretowaneMożliwe liczby całkowite to:
źródło
[0m
oferuje funkcjonalność, co dobrze to tłumaczy\033[0m
3
- kursywą , przynajmniej w konsoliZakładam, że bash działa na terminalu kompatybilnym z vt100, w którym użytkownik nie wyłączył obsługi formatowania.
Najpierw włącz obsługę znaków specjalnych
echo
za pomocą-e
opcji. Później użyj sekwencji ucieczki ansiESC[1m
, na przykład:Więcej informacji o sekwencjach ucieczki ansi, na przykład tutaj: ascii-table.com/ansi-escape-sequences-vt-100.php
źródło
echo -e "\033[1mSome Text\033[0m"
w przeciwnym razie następujące wiersze twojego terminalu również będą pogrubione\033
można użyć\e
jakecho -e "\e[1msome text\e[0m"
Teoretycznie tak:
Ale w praktyce można to interpretować jako kolor „wysokiej intensywności”.
(źródło: http://unstableme.blogspot.com/2008/01/ansi-escape-sequences-for-writing-text.html )
źródło