shell是一个命令解释器,处于内核和用户之间,负责把用户的指令传递给内核并且把执行的结果显示给用户。 常说shell是命令解释器,也是内核上的一层壳的意思。
shell诞生于Unix,是Unix/Linux交互的脚本编程,Linux都是默认集成了shell环境。其内部数据处理方面,侧重于文本(或说字符串,字符流)处理,运算和其他基本数据结构的原生较弱(array,set,map等等)。
缺点:实现命令自动化同时,需要依赖其他程序才能完成大部分工作,是缺点也是个优点。
优点:简洁的脚本语言标记方式,而且比c语言编写的程序执行更快,更有效率。
bash是Linux标准默认的shell,是BourneAgain Shell的缩写。
shell是c语言编写的程序,使用户使用Linux的桥梁,也是一门强大的编程语言。shell常见的类型有sh、zsh、csh等提供的脚本支持。 shell的功能在于实现命令自动化。
bash有很多特性,如:可以使用类似DOS下面的doskey的功能,用方向键查阅和快速输入并修改命令。自动通过查找匹配的方式给出以某些字符串的开头命令。输入help就可以得到先关帮助。
在Linux系统中那些:#!/bin/bash开头的文件内容,这就是声明了该文件是一个基于bash的shell编程文件。
干货
#!/bin/bash 进入mongodb/bin 目录 cd/home/liwei/mongodb/bin 执行启动mongodb数据, ./mongod-dbpath=../liwei_db. 一条条执行,还可以执行更多指令可以通过>或者>>来记录下一些的结果报告。
#!/bin/bash cd/lamp ls*.tar.gz>ls.list for TAR in 'cat ls.list' do tar-zxf $TAR 将目录里面所有的压缩包批量解压,ls的结果集可也拿来参与下一个命令执行。
将某文件夹下文件名大写字母改成小写字母 #!/bin/bash for file in 'ls |grep'[A-Z]' do str='echo $file|tr'A-Z' 'a-z' mv $file $str.
将空文件,没用的文件全部删掉