一、相关概念介绍
关于shell
命令例程软件。就打开Linux后你面对的那块死机。shell是我们与系统交互的翻译官,上面是一套程序。
我们在shell中输入命令,得到相应数据。诸如输入ipa获得网卡信息。这个指令是交给bashshell,它再交给系统,系统再调用内核linux命令基础语法,最后内核会调动硬件。最后再一层一层反馈出你想要的结果。
你直接输入“网卡”它不认识。
关于Bash这个Shell
我们来了解一下Linux使用的是哪一个shell?哪些,哪一个?莫非说shell不就是一个shell吗?哈哈,那可不,在早年的UNIX年代发展者诸多,所以shell根据发展者的不同就有许多的版本,比如常看到的Bourneshell(sh)、在sun上面默认的Cshell,商业上常用的Kshell等等。每种Shell各有其特征。Linux使用的这个版本称为【AgainBourneSHell(简称bash)】。这个shell是Bourneshell的提高版本,也是基准于GNU的构架下发展下来的。
shell的简单历史
第一个流行的shell是由StevenBourne发展下来的,为了记念它所以就称为Bourneshell,或直接简称为sh,而后来另一个广为留传的shell是由伯克利学院的BillJoy设计屈从于BSD版的UNIX系统中的shell,这个shell的句型有点类似C语言,所以才得名为Cshell,简称为csh,因为在学术界Sun主机势力相当庞大,而Sun是主要的UNIX分支之一linux命令基础语法,所以Cshell也是另一个很重要并且留传很广的shell。
这么目前我们的Linux(以CentOS7.x为例)有多少我们可以使用的shells呢?你可以检测etc/shells这个文件linux操作系统论文,起码就有下边这几个可以用的shells/bin/sh(早已被/bin/bash所替换)/bin/bash(就是Linux默认的shell)/bin/tcsh(整合CShell,提供更多的功能)/bin/csh(早已被/bin/tcsh所替换)
其实各家shell的功能都差不多,而且在个别句型的执行方面则有所不同linux操作系统培训,因而建议你还是得要选择某一种shell来熟悉一下较佳。Linux默认就是使用bash,所以最初你只要学会bash就十分了不起了。百度百科关于Bash的介绍:
Bash,Unix shell的一种,在1987年由布莱恩·福克斯为了GNU计划而编写。1989年发布第一个正式版本,原先是计划用在GNU操作系统上,但能运行于大多数类Unix系统的操作系统之上,包括Linux与Mac OS X v10.4都将它作为默认shell。
Shell执行方法:
输入命令形式===>效率低===>适宜少量工作
shellscript(脚本)===>效率高===>适宜复杂的工作
例如:
#创建用户
[root@db04 ~]# useradd andrew
#如果要创建100个用户,使用shell script
for n in `seq 100`;do
useradd andrew$n &&
echo "用户 andrew$n 已创建成功"
done
查看当前用的哪些Shell
[root@web01 ~]# echo $SHELL
/bin/bash
[root@web01 ~]# bash -version #// 查看你用的bash版本
GNU bash, version 4.2.46(2)-release (x86_64-redhat-linux-gnu)
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.