我们知道,计算机运行之后,总要进行人机交互,人机交互的界面我理解就叫shell. 比如,windows下有操作界面,比如开始-程序,然后选择命令执行。
这些界面若缺少了,基本上我们无法操作电话,上门是win7的界面。无论是windowsxp,win7,win8,win10,都需要这样的界面。这些管理这些界面的程序,在window下,有explorer.exe.
另外,在windows下,还有几个应用程序,cmd.exe,powershell,如下图所示
这些属于命令行的工具。很多年轻人已经不大用这些工具,但实际软件类工作中,需要大量的使用命令行工具。
那么在linux下面又是什么情况呢。
linux下的shell,也就是永远人机交互的程序很多,目前我们流行使用的是bash,特殊的在不同公司,可能会有到ksh,csh等。
也有图形化界面,比如gnome,kde等。一般我们说linux下的shell,指的是bash,这个shell的特点是使用起来比较方便,功能强大。
在bash下,会涉及到bash的特征,比如
1) 环境变量
2)管道命令
3)替换命令
4)重定向
另外,其他命令的执行,比如cp,mv等,当用户在命令行输入并回车后,shell会调用这些命令并执行。
终止程序的命令
CTRL+C
结束输入
CTRL+D