Linux常用命令与Shell基本编程.ppt

上传人:本田雅阁 文档编号:2145892 上传时间:2019-02-21 格式:PPT 页数:30 大小:1.35MB
返回 下载 相关 举报
Linux常用命令与Shell基本编程.ppt_第1页
第1页 / 共30页
Linux常用命令与Shell基本编程.ppt_第2页
第2页 / 共30页
Linux常用命令与Shell基本编程.ppt_第3页
第3页 / 共30页
亲,该文档总共30页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《Linux常用命令与Shell基本编程.ppt》由会员分享,可在线阅读,更多相关《Linux常用命令与Shell基本编程.ppt(30页珍藏版)》请在三一文库上搜索。

1、Shell 脚本基本编程,无线产品部 katanazhang 2009-11-09,课程目标,linux 常用命令 shell 脚本编程 awk 的用法,(一)Linux 常用命令,系 统 文 件 网 络 其 他,top ps free vmstat iostat pstree lsof,ls cd pwd time export date kill/killall,alias ipcs ipcrm df du crontab ulimit,常用命令系统,ln cat head tail more less rename which whereis who,diff grep cut sort

2、 uniq wc join,mkdir mv rm cp locate find history,split chmod chown su tar gzip gunzip,正则表达式,常用命令文件,常用命令网络、其它,ssh ifconfig netstat sz/rz scp,ping tcpdump telnet rsync expect,cal clear bc man,(二)Shell 脚本编程,概 念 特 点 语 法 实 例,什么是Shell, Shell 是一个命令解释器 Shell 也是一种编程语言 解析语法 执行命令,什么是shell脚本?,shell 是一种特殊的程序,它是用

3、户与Linux系统内核之间的接口 它解释运行由命令行或文件输入的命令,从而实现用户与内核间的交互 当输入是文件形式时,这个含有待执行命令的文件就叫做脚本,Shell 脚本的用途?,数据统计分析,进程实时监控,小程序的替身,Shell 脚本的特点?,简单、快速,不需要 编译,灵活 高效,当要反复使用一个或连续一组命令时,可以用shell脚本很方便的将它们全部执行,添加和修改逻辑只需要简单的保存文件,不担心性能,1. 选择一种Shell bash (bourne again shell) 2. 找一个编辑器 vi/vim 3. 依据语法编写命令及规则文件 *.sh 4. 增加文件可执行权限或使用

4、sh 执行 ./*.sh sh x *.sh,Shell 脚本的建立,注释 以#开头的句子(#!除外)表示注释,直到这一行结束 变量 Shell变量都由字符串组成,不需要声明, 可以在程序的任意位置重新对变量赋值: 赋值:变量名=值 访问:$变量名 或者 $变量名,=两端不能有空格,建议注释,Shell 脚本基本语法,系统预设变量 $0 当前程序的执行名字 $n 当前程序的第n个参数值,n=19 $* 当前程序的所有参数 $# 当前程序的参数个数 $ 当前程序的PID $! 执行上一个指令的PID $? 执行上一个指令的返回值,Shell 脚本基本语法,数值运算 bash 只提供了整数运算,一

5、般通过let和expr这两个指令来实现: 例如:let“x=$x+1” 或 x=expr $x+1 非整形运算可以通过bc来实现 x=echo “scale=2;(x-y)/x“|bc 在表达式中支持的操作符及其含义为: + - * / % (加,减,乘,除,取模 ) = = &= = |= (二元赋值操作),一种简写: i=$(i+1),Shell 脚本基本语法,流程控制,if expression then fi - if expression then elif expression then else fi,for $var in list do done - while condit

6、ion do done - until condition do done - break/continue,case $var in condition1) ; condition2) ; conditionn) ; *) default stat; esac,Shell 脚本基本语法,test 命令 if test expr; then fi,if expr ; then fi,Shell 脚本基本语法,Shell 脚本基本语法,定义: function func_name() #do operation on $n #函数外的变量是全局的 #local 可指定局部变量,引用: func_

7、name $param_list add() RET=$($2+$1) add 101 237 ; echo $RET,函数,Shell 脚本基本语法,(三)学习使用 Awk,语 法 实 例,基本语法 awk -F Ere -v Assignment -f ProgramFile|Program file 输入:文件/命令行 模式匹配 1.正则表达式,开始使用 awk ,一个或多个前一个指定的字符,0个或一个前一个指定的字符,0个或多个前一个指定的字符,任意一个字符,或;前后两个字符串中的任意一个,m 个 r,至少 m 个 r,m到n个r,含m,n,abcde中任意一个字符,非abcde中任意

8、一个字符,以abc开头,以abc结尾,2.关系表达式 (匹配) !(不匹配 ) (大于) =(大于等于) =(等于) !=(不等于) 3. 条件组合 Ere1,Ere2 指定范围(Ere1到Ere2); () 将复杂的条件组合在一起; &,|,! 布尔组合 4.BEGIN END 模式 BEGIN 在处理所有记录前执行,可用做初始化变量 END 在处理完所有记录后执行,可用做输出处理结果,开始使用awk ,开始使用awk ,变量赋值 name = value 特殊变量 $1 . $n 输入记录的个字段值,$0:整个记录 FILENAME 当前输入文件的路径名称 FNR 当前文件中的当前输入记录

9、的个数 FS 输入字段分隔符(单个字符或正则表达式) NF 当前记录中的字段个数 NR 当前输入记录的个数 RS 输入记录分隔符(缺省值是换行字符)。 OFS 输出字段分隔符(缺省值是空格)。 ORS 输出记录分隔符(缺省值是换行字符)。,算术运算 +,-,*,/,%,+,-,+=,-=,*=,/=,=,%= 流程控制 1) if ( Expression ) Statement else Action 2) while ( Expression ) Statement 3) for ( Expression ; Expression ; Expression ) Statement 4) b

10、reak/continue 5) for ( Variable in Array ) Statement 6) if ( Variable in Array ) Statement ,开始使用awk ,7) delete Array Expression 8) delete/fdelete 9) exit 使用函数 function func_name(param1,param2) 调用:RET = func_name(param1,param2) function average ( g,n) for (i in g)sum=sum+gi avg=sum/n return avg ,开始使用

11、awk ,内建函数 1.数学函数 atan2(y,x)返回 y/x 的反正切。 cos(x)返回 x 的余弦;x 是弧度。 sin(x)返回 x 的正弦;x 是弧度。 exp(x)返回 x 幂函数。 log(x)返回 x 的自然对数。 2.字符串函数 sub(Ere, Repl, In) 替换第一个In中与Ere匹配的字符串 gsub(Ere, Repl, In)替换所有In中与Ere匹配的字符串 index(String1, String2)查询子字符串 length (String) 返回字符串长度 substr(String, M, N) 返回M开始长度为N的子字符串,开始使用awk ,

12、match( String, Ere) split( String, A, Ere )将 String 分割为数组元素 An tolower( String ) 转换为小写字符串 toupper(String ) 转换为大写字符串 sprintf(Format, Expr, Expr, . . . ) 格式转换,用法同 c 3.时间函数 mktime(datespec)输入“YYYY MM DD HH MM SS”,输出秒 strftime(format,timestamp)输入秒,返回格式字符串systime() 返回当前时间 eg. awk print strftime(“%b-%a“,m

13、ktime(2005 05 13 00 00 00),开始使用awk ,输出 print ExpressionList Redirection Expression ExpressionList:待输出的字符串,由变量和常量字符串组成 Redirection:,| 输出到文件或做为其他命令的输入 Expression:Redirection的目的地址,文件名或其他命令 printf Format ,ExpressionList RedirectionExpression printf 语句将 ExpressionList 参数指定的表达式以 Format 参数 指定的格式写至标准输出,Format同c语言(除了%c) %c:当变量为数字,则输出该数字的字符编码 %c:当变量为字符串,则输出该字符串的第一个字符,开始使用awk ,谢谢大家!,无线产品部 coonzhang (rtx:9240 分机:7235),正则表达式( regular expression), Back,一个正则表达式,就是用某种模式去匹配一类字符串的一个公式,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1