1.概述
Linux Shell是用户与Linux内核交互的接口,通过Shell脚本可以执行很多复杂的功能。Shell脚本对于Linux系统管理员提供很好的帮助,能够自动化执行一些例行的管理任务。也能够监控系统数据和数据文件到为上级生成报告。总之,Linux Shell脚本非常的强大,非常有利于我们进行数据的处理以及自动化管理。
2. shell脚本基本命令
显示消息: echo
echo命令能够简单的显示文本字符串。既可以用单引号,也可以用双引号来标记字符串的类型,如果字符串有包含引号,那么用一种引号类型来标记文本字符串即可。如果引用字符串的值,用$.
例子:
[root@localhost ~]# echo "this is a test"
this is a test
[root@localhost ~]# echo "this is a 'test'"
this is a 'test'
[root@localhost ~]# test="test1"
[root@localhost ~]# echo $test
test1
管道 command1|command1
即第一个命令的输出作为第二个命令的输入,没有使用中间文件或者缓冲区来传送数据。
[root@localhost ~]# rpm -qa|sort|more
a2ps-4.13b-57.2.el5
acl-2.2.39-3.el5
acpid-1.0.4-9.el5
alacarte-0.10.0-1.fc6
alchemist-1.0.36-2.el5
alsa-lib-1.0.17-1.el5
美元符号$与方括号[]计算符。
$[ operation ]
#!/bin/bash
var1=100
var2=50
var3=45
var4=$[$var1*($var2-$var3)]
echo the final result is $var4
反引号 ``
反引号允许将shell命令的输出值赋值给变量
#!/bin/bash
#copy /usr/bin dir listing to a log file
today=`date +%y%m%d`
ls /usr/bin -al>log.$today
说明:脚本中#是用来注释的,但shell脚本的第一行#!并不是注释的,表示启动/bin/bash这个bash.
用反引号来捕获当前日期,然后在脚本中创建唯一的文件名。
查看退出状态 $?
$?用来保存最后一条命令执行的退出状态。
0-命令成功完成
1-通常的未知错误
2-误用shell命令
127-没有找到命令
128-无效的退出参数
128+x-使用linux信号的致命错误
130-使用CTRL+C终止命令
126-命令无法找到
255-规范外的既定出状态
[root@localhost chapter8]# echo $?
0
这里主要介绍了关于shell脚本的一些简单的基础知识。