先上一张自己终端的图片。
https://ohmyz.sh/
安装方法在最后
先明确几个概念
这些概念本身有着非常浓厚的历史气息,随着时代的发展,他们的含义也在发生改变,它们有些已经失去了最初的含义,但是它们的名字却被保留了下来。
控制台(Console)
控制台(Console)是物理设备,用于输入输出,它直接连接在计算机上,是计算机系统的一部分。计算机输出的信息会显示在控制台上,例如BIOS的输出,内核的输出。
终端(Terminal)
终端(Terminal)也是一台物理设备,只用于输入输出,本身没有强大的计算能力。一台计算机只有一个控制台,在计算资源紧张的时代,人们想共享一台计算机,可以通过终端连接到计算机上,将指令输入终端,终端传送给计算机,计算机完成指令后,将输出传送给终端,终端将结果显示给用户。
虚拟控制台(Virtual Console),虚拟终端(Virtual Terminal)
虚拟控制台(Virtual Console)和虚拟终端是一样的。我们只有一台终端(物理设备),这是我们与计算机之间的用户接口。假如有一天,我们想拥有多个用户接口,那么,一方面我们可以增加终端数目(物理设备),另一方面,还可以在同一台终端(物理设备)上虚拟出多个终端,它们之间互相不影响,至少看起来互相不影响。这些终端就是虚拟终端。
我们按下Ctrl+Alt+Fx时,会进入第x个虚拟终端,一共有六个(几个都有可能)虚拟终端,其中第1个虚拟终端,就是我们默认使用的图形用户界面。
终端模拟器(Terminal Emulator)
我们知道,终端是一种物理设备,而终端模拟器(Terminal Emulator),是一个程序,这些程序用来模拟物理终端。图形用户界面中的终端模拟器一般称为终端窗口(Terminal Window),我们在Ubuntu下打开的gnome-terminal就属于此类。
tty
tty的全称是TeleTYpewriter,这就是早期的终端(物理设备),它们用于向计算机发送数据,并将计算机的返回结果打印出来。显示器出现后,终端不再将结果打印出来,而是显示在显示器上。但是tty的名字还是保留了下来。
我们按下Ctrl+Alt+F2时,会进入第2个虚拟终端,你可以看到屏幕上方显示的tty2。
shell
shell 和之前说的几个概念截然不同,之前的几个概念都是与计算机的输入输出相关的,而shell是和内核相关的。内核为上层的应用提供了很多服务,shell在内核的上层,在应用程序的下层。例如,你写了一个 hello world 程序,你并不用显式地创建一个进程来运行你的程序,你把写好的程序交给shell就行了,由shell负责为你的程序创建进程。
我们在终端模拟器中输入命令时,终端模拟器本身并不解释执行这些命令,它只负责输入输出,真正解释执行这些命令的,是shell。
我们平时使用的sh, bash, csh是shell的不同实现。
说到正题,终端美化,虽说美化鸟用没有,但是自己看着好看啊!!!
首先在终端中安装zsh
sudo apt-get install zsh -y
然后安装oh-my-zsh,依次执行下面的命令
wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | sh
设置zsh为默认shell
chsh -s /bin/zsh
如果这条命令不能更改默认shell,修改具体的文件,百度解决就行
默认的不太好看,我们使用另一个主题Powerlevel10k
安装方法:执行下面的命令
git clone https://github.com/romkatv/powerlevel10k.git ~/powerlevel10k
再执行
echo 'source ~/powerlevel10k/powerlevel10k.zsh-theme' >>! ~/.zshrc
下载好之后,发现字体可能乱码,我们下面解决
如果字体乱码,执行下面的命令
在终端中执行下面两条命令
mkdir -p ~/.local/share/fonts
cd ~/.local/share/fonts && curl -fLo "Droid Sans Mono for Powerline Nerd Font Complete.otf" https://github.com/ryanoasis/nerd-fonts/raw/master/patched-fonts/DroidSansMono/complete/Droid%20Sans%20Mono%20Nerd%20Font%20Complete.otf
然后打开你的宿主目录下面的配置文件.zshrc,
vi ~/.zshrc
加入这句话
POWERLEVEL9K_MODE="nerdfont-complete"
即可。配置完成
显示系统信息用的是这个软件,screenfetch 安装方法:apt-get install screenfetch 安装完成之后就在终端输入screenfetch即可显示
有个定时任务突然不执行了,别急,原因可能在这
边缘计算 一文简单读懂
Tomcat是如何运行的?整体架构又是怎样的?
戳这儿