Answers:
说明:
脚本认为您使用的是gnome-terminal,这是默认的Ubuntu终端。
在运行脚本之前,打开gnome终端并根据需要创建一些配置文件(“编辑”>“首选项”>“配置文件”),这些配置文件具有不同的设置(背景颜色,文本颜色,..)。您可以将它们命名为Profile1,Profile2,Profile3等。创建足够的配置文件以涵盖将要打开的终端数量,但是如果打开的终端数量更多,则将使用默认配置文件。
该脚本创建了〜/ .Bash_Color_Changer文件,它依赖于此文件,因为它将告诉脚本终端是定期打开还是在调用.bashrc之后打开。
将脚本添加到〜/ .bashrc文件的末尾。
脚本:
添加到.bashrc
:
#Change color according to the number of Bash shells opened
#Creates the .Bash_Color_Changer file if it's not present
if ! [ -f ~/.Bash_Color_Changer ]; then
echo ORIGINAL > ~/.Bash_Color_Changer
fi
#Array holding the name of the profiles: Substitute it for the names you're using
Color_counter=(Profile1 Profile2 Profile3)
#Finds out the number of opened bashs counting the lines containing "bash"
#in the pstree function. (-c deactivates compact display to avoid it showing
#lines with "2*[bash]" instead of one for each bash)
Number_of_bashs=$(($(pstree -c | grep "bash" | wc -l)-1))
#Checks if the terminal being opened was opened by the user or by
#the script, and act according to it
if [ $(cat ~/.Bash_Color_Changer) = ORIGINAL ]; then
if ((Number_of_bashs < ${#Color_counter[*]})); then
echo COPY > ~/.Bash_Color_Changer
gnome-terminal --tab-with-profile-internal-id=${Color_counter[${Number_of_bashs}]}
exit
fi
else
echo ORIGINAL > ~/.Bash_Color_Changer
fi
经过测试,但未进行广泛的测试。请享用!
exit
根据诸如~/bashcolor.txt
。的文件添加条件。它可能需要一行来说明正在打开的bash是“原始”还是“副本”。因此,如果cat ~/bashcolor.txt
返回“ ORIGINAL”,exit
则运行命令echo COPY > ~/bashcolor.txt
。否则,退出不会运行,但文件会恢复为原始(echo ORIGINAL > ~/bashcolor.txt
)。它将解决闪烁的终端问题。
Number_of_bashs=$(($(($(pstree -c | grep "bash" | wc -l)-1))%${#Color_counter[@]}))
一种选择是使用xfce4-terminal
。它与默认的Ubuntu终端非常相似(gnome-terminal
),并且许多依赖包都使用gtk组件,这使其成为合适的替代方案。
首先安装
sudo apt-get install xfce4-terminal
然后将其打开,转到“ 编辑” -> “首选项”,选择“ 颜色”选项卡,并选中以下选项:更改每个选项卡的背景色,然后退出。
设置默认终端xfce4-terminal
或更改其快捷方式以Ctrl-Alt-T
将其打开。
有用的链接:
哈哈,非常有趣。我也可以尝试这样做。我主要只运行多个终端和一个浏览器。
所以我环顾四周,发现了这个-https://github.com/sos4nt/dynamic-colors。一个非常简洁的小项目,可以帮助您实现所需的一部分。
现在,在该colorschemes/
项目的目录中,您会看到它当前有4种配色方案。您可以根据需要/添加任意数量。
因此,要使每个终端选择不同的颜色方案,我将向.bash_profile
或.bashrc
或任何地方添加一个函数,以便该函数执行以下两项操作:
dynamic-colors switch colorscheme-name
基于(1)的命令。希望这可以帮助!
PS:我会为您编写脚本,但我讨厌用勺子喂食,而且我很懒。:)
gnome-terminal --load-config=FILE
Konsole实际上本身就支持此功能。Konsole确实功能强大且高度可定制。
如果您没有Konsole,则只需 sudo apt install konsole
最重要的是,如果您同时在三台服务器上工作,则可以包括此处显示的一些漂亮的别名