一、什么是Shell?
Shell是工作在Linux内核与用户之间的解释程序;Shell的类型包括ash、bash、ksh、csh等。
---cat /etc/shells #得到系统中有哪些shell。
---echo $SHELL #得到系统目前运行在哪个shell下。
输入指令后的结果如下图:
(1)相当于操作系统的“外壳”;
(2)向Linux内核传达用户指令的“翻译官”;
(3)通常指BASH(/bin/bash)
Windows下的Shell解释器:C:\Windows\System32\cmd.exe
总的来说,Shell的作用就是翻译用户指令给Linux系统内核,并将结果显示到显示器上。
二、登录Shell环境:
(1)作为用户登录的第一个程序,即常见的”Linux命令行”环境,以交互方式运行,用户每输入一个一行命令,立即解释并执行。
(2)手动选择Shell环境:
直接执行指定的解释器环境,常见的有Shell有bash、zsh、tcsh,相当于新建一个子环境(父--->子进程)
(3)交互式&&非交互式
交互式:人工干预、智能化程度高,但是逐条解释执行效率低。
非交互式:需要提前设计、智能化程度难度大、批量执行效率高和方便在后台静悄悄的运行。