Odpowiedzi:
Nie widziałem skryptu, o którym wspomniałeś. Ale myślę, że możliwe jest stworzenie takiego skryptu.
Terminal Gnome podnosi kolor tła z używanego profilu , więc każda zmiana będzie miała wpływ na kolor tła wszystkich terminali korzystających z tego samego profilu.
Mimo to klucz konfiguracji jest przechowywany w / apps / gnome-terminal / profiles / Default / background_color , gdzie Domyślna jest aktualnie używanym profilem.
Można ustawić w ten sposób:
gconftool-2 - zestaw "/ apps / gnome-terminal / profiles / Default / background_color" - ciąg znaków "# E376DDDDFFFF"
Zgaduję, że można napisać skrypt do sklonowania Domyślna profil w locie, zmień to kolor tła , przywołaj gnome-terminal z tym profilem i usuń profil przed wyjściem. Do użycia tego skryptu potrzebna będzie również baza danych dobrych kombinacji kolorów pierwszego planu / tła.
Aktualizacja: Oto skrypt do zrobienia tego, co zostało omówione powyżej. Nie generuje losowego koloru tła, który musisz wygenerować za pomocą listy.
#!/bin/bash
PROFILE_NAME=${RANDOM}_p_${RANDOM}
TMP_DIR=/tmp
DEFAULT_PROFILE=Default
PROFILE_EXPORT_FILE=${TMP_DIR}/${PROFILE_NAME}.xml
#replace with program to generate a random background color
BACKGROUND_COLOR="#0000AA000"
# dump the "Default" profile, replace with new random profile name
gconftool-2 --dump /apps/gnome-terminal/profiles/${DEFAULT_PROFILE} > ${PROFILE_EXPORT_FILE}
sed -i "s/${DEFAULT_PROFILE}/${PROFILE_NAME}/g" ${PROFILE_EXPORT_FILE}
# load the new random profile, change the background color
gconftool-2 --load ${PROFILE_EXPORT_FILE}
gconftool-2 --set "/apps/gnome-terminal/profiles/${PROFILE_NAME}/background_color" --type string "${BACKGROUND_COLOR}"
# add the new random profile to list of profiles
PROFILE_LIST=`gconftool-2 --get /apps/gnome-terminal/global/profile_list`
NEW_PROFILE_LIST=`echo $PROFILE_LIST | sed "s/]/,${PROFILE_NAME}]/g"`
gconftool-2 --set /apps/gnome-terminal/global/profile_list --type list --list-type string "$NEW_PROFILE_LIST"
# start gnome-terminal with new random profile, such that the script blocks till terminal is closed.
gnome-terminal --window-with-profile=${PROFILE_NAME} --disable-factory
# cleanup: remove the new random profile, and remove it from list of profiles
gconftool-2 --recursive-unset /apps/gnome-terminal/profiles/${PROFILE_NAME}
PROFILE_LIST=`gconftool-2 --all-dirs /apps/gnome-terminal/profiles | sed "s/ \/apps\/gnome-terminal\/profiles\///" | sed -n -e 'H;${x;s/\n/,/g;s/^,//;p;}'`
gconftool-2 --set /apps/gnome-terminal/global/profile_list --type list --list-type string '['"${PROFILE_LIST}"']'