shell笔记
2018-08-06 本文已影响0人
小李_a98e
shell笔记
- 变量定义
var=helloworld 全局变量
local var=helloworld 局部变量
- 获取系统命令结果
result=`ls -l`
- 数学预算
echo $((2 + (5*2)))
- 返回代码
$? 命令执行成功或失败 0为成功 非0为失败
- 脚本参数
$0、$1、$2...
- 脚本返回代码
exit 1 运行到此行退出 非0退出
- 函数
my_info (){
lscpu >> log
uname –a >> log
free –h >> log
}
函数参数和脚本参数类似 $0、$1、$2...
跨脚本调用函数 source xx.sh
- 逻辑判断
等于: $test 3 -eq 3; echo $?
不等于: $test 3 -ne 1; echo $?
大于等于: $test 5 -ge 2; echo $?
小于等于: $test 3 -le 1; echo $?
- 选择结构
#!/bin/bash
var = `whoami`
if [ $var = "root" ]
then
echo "You are root"
echo "You are my God."
fi
- 循环结构
#!/bin/bash
now=`date +'%Y%m%d%H%M'`
deadline=`date --date='1 hour' +'%Y%m%d%H%M'`
while [ $now -lt $deadline ]
do
date
echo "not yet"
sleep 10
now=`date +'%Y%m%d%H%M'`
done
echo "now, deadline reached"
- For
#!/bin/bash
for var in `ls log*`
do
rm $var
done