查看shell函数写法可以参考
/etc/init.d/functions 打印信息可以调用,action函数
局部变量使用加上 local 定义
全局变量什么也不加
需要执行的命使用反引号``
字符串一般使用双引号“”
原样输出使用单引号‘’
脚本在没有给执行权限的情况下可以使用sh或者bash来执行 函数脚本加载
使用.或者source 定义函数时可以加上function
echo 调试脚本最好的方法
set -x 加在脚本中可以开启调试模式
set +x 加在脚本中可以关闭调试模式
bashdb专用的脚本调试工具
md5sum 密码生成工具 openssl rand 20 密码生成工具
partproble 刷新磁盘分区 fdisk 磁盘分区工具,磁盘大于2T不可用 parted 磁盘大于2T可用
parted /dev/sdb mklabel gpt 更改磁盘分区表
mkfs.ext3 /dev/sdb1 格式化
挂在一些东西一般不放在/etc/fstab,应该放在etc/rc.local 虚拟机可以添加硬盘,
7、数组 数组定义:用括号表示数组,里面的元素用空格隔开
arry=(var1 var2 var3) 或者 arry[0]=var1
arry[1]=var2 arry[2]=var3
读取数组内容:
${arry[*]}或者${arry[@]}
代表调用数组里所有的元素 var1 var2 var3 ${arry[1]}
获取的是var2 ${arry[0]}
获取的是var1 .... ${arry[n-1]}
获取数组里的第n个元素
8、定义一个有类型的变量 declare
-i:将变量看成整数
-r:只读变量
-x:将变量通过export到出到环境变量
-a:将变量看成数组
分支语句 if 条件;then
dosomething... fi
if 条件 then
dosomething... else
dosomething... fi
if 条件 then
dosomething... elif 条件 then
dosomething... fi
case $yn in
1) ;;
2) ;;
*) ;;
esac
循环语句
while 条件 do
dosomething... done
until 条件 do
dosomething...
done
for 条件 in do
dosomething...
done
for ((expr1;expr2;expr3))
do
command... done