Shell脚本
Shell变量

- 变量定义
 
#!/bin/bash
my_name="sunpy"
- 变量使用
 
echo ${my_name}
- 只读变量
 
readonly my_url
- 删除变量
 
unset my_url
字符串
- 字符串拼接
 
#!/bin/bash
my_name="sunpy"
my_str="my name is "${my_name}", hello!"
echo ${my_str}
- 获取字符串长度
 
echo ${#my_str}
- 提取子字符串
 
echo ${my_str:3:4}
Shell数组
- 数组定义
 
my_arr=("f" 2 "k")
- 数组元素引用
 
my_arr[1]="uc"
- 读取数组
 
${my_arr[1]}
- 读取数组所有元素
 
${my_arr[@]}
- 获取数组长度
 
${#my_arr[@]}
Shell运算符
- 算术运算符
![image]()
 


- 
布尔运算符
![image]()
 - 
逻辑运算符
![image]()
 - 
字符串运算符
![image]()
 - 
文件测试运算符
![image]()
 
echo命令输出
- 显示普通字符
 
echo "my name is zhangsan"
- 显示转义字符
 
echo "\" my name is zhangsan\""
- 显示变量
 
# read 命令从标准输入中读取一行,并把输入行的每个字段的值指定给 shell 变量
read name
echo ${name}" get very good!"
- 显示换行
 
echo -e "OK! \n" # -e 开启转义
echo "It is a test"
- 显示不换行
 
echo -e "OK! \c" # -e 开启转义 \c 不换行
echo "It is a test"
- 追加写入
 
echo "wo tu le " >> test.sh
printf命令输出


printf "printf operate\n"
printf "%-10s %-8s %-4s\n" 姓名 性别 体重kg
控制语句
- 
if then fi - 
if then else fi 
if condition1
then
    command1
elif condition2 
then 
    command2
else
    commandN
fi
for 循环
for loop in 1 2 3 4 5
do
    echo "The value is: $loop"
done
while 语句
value=1
while(( $value<=5 ))
do
    echo $value
    let "value++"
done
until循环
until [ ! $val -lt 10 ]
do
   echo $val
   val=`expr $val + 1`
done
跳出循环
break跳出循环
continue跳出当前循环
until [ ! $val -lt 10 ]
do
        if [ $val = 8 ]
        then
                break;
        fi
   echo $val
   val=`expr $val + 1`
done
Shell函数
function doExec() {
        let my_exec="now var is exec";
        return my_exec;
}
echo "doExec return value "$?

Shell输入输出重定向
echo "select * from bus_auth_check_info" > sunpy.txt
将信息写入文件,删掉该文件,重新创建文件,写入信息
echo "select * from emp_user" >> sunpy.txt
将信息写入文件,将信息增加的文件的尾部。
备注
- vim显示行号
:set nu - 整行删除
双击D - vim搜索文本
/
向后搜索
n 
                    
                





                
            
        
浙公网安备 33010602011771号