鸟哥的Linux私房菜基础学习篇(第三版)之第十三章:shell scripts
2013-04-11 16:51
148 查看
第十三章shell scripts
什么是 Shell Script
1.1 干嘛学习 shell script
1.2 第一支script的撰写与执行
1.3 规范(说明,历史,特殊指令的绝对路径,变量先声明与设定,exit返回值)
简单的shell script练习
2.1 简单范例(常用的模板)
对谈式,等用户输入
随日期变化,利用date,${date --date='1 days ago' +%Y%m%d}
数值运算,只支持整型,var=$((运算内容))
2.2 script执行方式差异(source,sh,script,./script)
用source是在本主程序用运行,其他事开启一个子程序运行
善用判断式
3.1 用test指令测试功能
1 判断某个文件或目录存在与否,还有文件类型 test -e /ckt && echo "exit" || echo "Not exist"
2 判断是否具有权限,test -r filename
3 两个档案之间的比较 test file1 -nt file2
4 两个整数之间的判断 test n1 -eq n2
5 判断单个字符串是否为空,或者两个字符串是否相等
6 多重条件判定,与或非: -a -o !
3.2 利用判断符号[],注意要很多空格:[ "$HOME" == "$SMAIL" ]
3.3 shell script的默认变数($0,$1)
$0: 文档名
$1: 第一个参数
$#: 参数个数
$@: ="$1" "$2" "$3" "$..." "$n"
$*: ="$1 $1 $3 $... $n"
shift: 造成参数变量号码偏移
条件判断式
4.1 if [条件判断式];then
elif [条件判断式];then
else
fi
4.2 case $变量名称 in
"第一个变量内容")
程序段
;;
"第N个变量内容")
程序段
;;
程序段
exit 1
;;
esac
4.3 利用function功能
function fname(){
程序段
}
同样有$0,$1,$2...
循环loop
5.1 while do done,until do done
while [condition]
do
程序段
done
util [condition]
do
程序段
done
5.2 for var in con1 con2 con3
do
程序段
done
for初始值;限制值;执行步阶)
do
程序段
done
debug
sh [-nvx] scripts.sh
-n :不执行,就查询语法
-v :先显示再执行
-x : 还是显示,带+号
所涉及的命令
$(seq 1 100)
什么是 Shell Script
1.1 干嘛学习 shell script
1.2 第一支script的撰写与执行
1.3 规范(说明,历史,特殊指令的绝对路径,变量先声明与设定,exit返回值)
简单的shell script练习
2.1 简单范例(常用的模板)
对谈式,等用户输入
随日期变化,利用date,${date --date='1 days ago' +%Y%m%d}
数值运算,只支持整型,var=$((运算内容))
2.2 script执行方式差异(source,sh,script,./script)
用source是在本主程序用运行,其他事开启一个子程序运行
善用判断式
3.1 用test指令测试功能
1 判断某个文件或目录存在与否,还有文件类型 test -e /ckt && echo "exit" || echo "Not exist"
2 判断是否具有权限,test -r filename
3 两个档案之间的比较 test file1 -nt file2
4 两个整数之间的判断 test n1 -eq n2
5 判断单个字符串是否为空,或者两个字符串是否相等
6 多重条件判定,与或非: -a -o !
3.2 利用判断符号[],注意要很多空格:[ "$HOME" == "$SMAIL" ]
3.3 shell script的默认变数($0,$1)
$0: 文档名
$1: 第一个参数
$#: 参数个数
$@: ="$1" "$2" "$3" "$..." "$n"
$*: ="$1 $1 $3 $... $n"
shift: 造成参数变量号码偏移
条件判断式
4.1 if [条件判断式];then
elif [条件判断式];then
else
fi
4.2 case $变量名称 in
"第一个变量内容")
程序段
;;
"第N个变量内容")
程序段
;;
程序段
exit 1
;;
esac
4.3 利用function功能
function fname(){
程序段
}
同样有$0,$1,$2...
循环loop
5.1 while do done,until do done
while [condition]
do
程序段
done
util [condition]
do
程序段
done
5.2 for var in con1 con2 con3
do
程序段
done
for初始值;限制值;执行步阶)
do
程序段
done
debug
sh [-nvx] scripts.sh
-n :不执行,就查询语法
-v :先显示再执行
-x : 还是显示,带+号
所涉及的命令
$(seq 1 100)
相关文章推荐
- 第34周-鸟哥的Linux私房菜基础篇第三版- 第十三章、Shell Scripts
- 第十三章、学习 Shell Scripts
- Hadoop: the definitive guide 第三版 拾遗 第十三章 之HBase起步
- Hadoop: the definitive guide 第三版 拾遗 第十三章 之HBase起步
- Linux鸟哥私房菜学习笔记_第十三章 Shell Scripts
- 鸟哥的Linux私房菜(基础篇)- 第十三章、学习 Shell Scripts
- 《汇编语言》(第三版)王爽第十三章实验13.1个人方法记录
- 第十三章、学习 Shell Scripts
- 《python核心编程第三版网络编程章节》
- Qt快速入门第三版章节3.2.3标准对话框练习
- 14.5 富文本编辑【JavaScript高级程序设计第三版】
- 《C算法.第1卷,基础、数据结构、排序和搜索(第三版)》pdf
- 《linux命令行与shell脚本编程大全》第三版 - 核心笔记(1/4):理解shell与linux命令
- 深入理解计算机系统(第三版) 练习2.13
- 深入理解计算机系统(第三版) 练习2.15
- 如何学习C++? C++ Primer第三版中文版
- 王爽.汇编.第三版.实验12.答案
- 算法导论 第三版 9.3-8
- 王爽汇编第三版实验10.3 浅析
- 《鸟哥的Linux私房菜 基础学习篇(第三版)》习题与解析(二)