Shell简介
1.什么是shell脚本?
2.shell脚本的编写,执行和调试
Shell变量
参数相关
$* 获取所有参数,将所有的参数作为一个字符串。
$#获取参数的个数
$0获取shell脚本的名字
进程相关
$$ 显示当前shell的进程号
$? 显示上一条命令的返回值
命令和shell的返回值分类
0:正常返回(command not found)0
127:命令不存在 127
126: 没有权限(Permission denied)
Shell中的函数
myfunction(){
echo "function body"
echo $1 $2
}
带返回值的函数
function add(){
a=$1
b=$2
c=$(($a+$b))
return $c
}
调用函数
#!/bin/sh
. /home/shell/functions.sh
add 11 33
echo $?
shell脚本中的返回值默认0-255,必须是数字。不建议直接返回计算的数值,将结果在函数内部打印
Shell中的数组
Shell中只有一维数组,数组的下标从0开始。
定义方式
Array_name=(value1 value2...)
注意,值之间的分隔符是空格
取值方式
Array_name[0]=value1
shell脚本修改主机名
update_host_name.sh hostname
方法一:使用写入方式
#!/bin/sh
# this is update hostname
hostname=$1
echo $hostname > /etc/hostname
Reboot
方法二:使用读入方式
#!/bin/sh
# this is update hostname
cat > /etc/hostname <<EOF
server03
EOF
Reboot