2016-07-15 2 views
-3

Я хочу генерировать цвета ANSI случайным образом. Ему нужны две функции.Как произвольно генерировать цвета ANSI в Bash/Perl?

  • генерируется случайным образом
  • выбор, чтобы генерировать из определенного цвета типа, например, случайным образом генерируют разные оттенки только серого или только зеленого цвета.
+3

Является ли это запрос программа или это вопрос? Этот вопрос также не показывает никаких исследований и попыток автора. –

+1

Это, по крайней мере, три вопроса: генерация случайных значений, изменение цветов вывода и выполнение этого в 'bash' или' perl'. Вам нужно будет показать некоторые исследовательские усилия и немного сузить это. – chepner

+3

Вы, кажется, не задали вопрос и, похоже, ожидаете, что кто-то сделает вашу работу за вас. Stack Overflow предлагает просить о помощи с кодом исправления, который вы написали, и изо всех сил пытается работать. Это не место, где вы можете просто сбросить требование, и решение волшебным образом выскочит. Вы получите гораздо лучший ответ, если бы вы, по-видимому, даже приложили максимум усилий. – Borodin

ответ

2

В Баш, вам нужно использовать цвет управляющие последовательности с echo -e

random_colors.sh

#!/bin/bash 

TXT='the quick brown fox jumped over the lazy dog.' 
WORDS=($TXT) 
for WORD in "${WORDS[@]}"; do 
    let "i=$RANDOM % 256" 
    echo -en "\e[38;5;${i}m$WORD \e[0m"; 
done; 
echo 

Идущие это в 10 раз:

for i in `seq 1 10`; do bash random_colors.sh; done 

Выходные

Bash Color Output

Чтобы получить определенную палитру, вам нужно будет ограничить набор цветных цифр.

ANSI Escape Codes for Colors

Colors and Formatting

Смежные вопросы