低级shell编程

初级shell编程

Linux只是一个内核,要让内核按照用户的命令工作,就需要建立一种方法让人机能够交流,shell是Unix/Linux提供的一种人机交互环境,它由一组命令命令解释器组成。

对于一些简单的操作如建个新目录、拷贝一个文件,只需一个个的执行某几个命令就可以完成了,但对于复杂的操作,如:

       将本周里所有的日志中包含XXX信息的日志备份到以备份日期为目录名的目录下,同时将其做为邮件发送到管理员信箱。就要输入好多命令才能完成,而且每周都要输入一次,对管理员来说这项工作也太无聊了,于是shell为用户提供了一个简化的方法,用户可以写一个脚本例如写一个backup.sh,将这些命令按一定的方式(顺序、判断、循环)集成到一起执行,这样每次要备份时只需运行backup.sh文件就OK了(它是脚本所以不需要编译,就可以在sh解译器下执行),如果还想少做点事,还可以把它加入到cron中定期自动执行。


shell:一种人机交互环境(它有多种实现方式如Bash、Ksh、Csh等等)它由一组命令和一个命令解释器组成。
shell脚本:为了达到某种目的,以编程的方式将shell命令组合到一起形成的一个文件。
shell编程:如果把系统命令理解成系统库函数(本质上两者没有什么差别),shell就相当于一种编程环境了。

 

查看本机上所有的shell

cat /etc/shells

 /bin/sh
 /bin/bash
 /sbin/nologin
 /bin/tcsh
 /bin/csh
 /bin/ksh

 

查看当前使用的是哪种shell

$SHELL
 /bin/bash (linux下默认使用的shell)