Linux常用命令与Shell基本编程.ppt
《Linux常用命令与Shell基本编程.ppt》由会员分享,可在线阅读,更多相关《Linux常用命令与Shell基本编程.ppt(30页珍藏版)》请在装配图网上搜索。
Shell脚本基本编程 无线产品部katanazhang2009 11 09 课程目标 linux常用命令shell脚本编程awk的用法 一 Linux常用命令 系统文件网络其他 toppsfreevmstatiostatpstreelsof lscdpwdtimeexportdatekill killall aliasipcsipcrmdfducrontabulimit 常用命令 系统 lncatheadtailmorelessrenamewhichwhereiswho diffgrepcutsortuniqwcjoin mkdirmvrmcplocatefindhistory splitchmodchownsutargzipgunzip 正则表达式 常用命令 文件 常用命令 网络 其它 sshifconfignetstatsz rzscp pingtcpdumptelnetrsyncexpect calclearbcman 二 Shell脚本编程 概念特点语法实例 什么是Shell Shell是一个命令解释器 Shell也是一种编程语言 解析语法 执行命令 什么是shell脚本 shell是一种特殊的程序 它是用户与Linux系统内核之间的接口它解释运行由命令行或文件输入的命令 从而实现用户与内核间的交互当输入是文件形式时 这个含有待执行命令的文件就叫做脚本 Shell脚本的用途 数据统计分析 进程实时监控 小程序的替身 Shell脚本的特点 简单 快速 不需要编译 灵活高效 当要反复使用一个或连续一组命令时 可以用shell脚本很方便的将它们全部执行 添加和修改逻辑只需要简单的保存文件 不担心性能 1 选择一种Shellbash bourneagainshell 2 找一个编辑器vi vim3 依据语法编写命令及规则文件 sh4 增加文件可执行权限或使用sh执行 shsh x sh Shell脚本的建立 注释以 开头的句子 除外 表示注释 直到这一行结束变量Shell变量都由字符串组成 不需要声明 可以在程序的任意位置重新对变量赋值 赋值 变量名 值访问 变量名或者 变量名 两端不能有空格 建议注释 Shell脚本基本语法 系统预设变量 0当前程序的执行名字 n当前程序的第n个参数值 n 1 9 当前程序的所有参数 当前程序的参数个数 当前程序的PID 执行上一个指令的PID 执行上一个指令的返回值 Shell脚本基本语法 数值运算bash只提供了整数运算 一般通过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 varin list do done while condition do done until condition do done break continue case varincondition1 condition2 conditionn defaultstat esac Shell脚本基本语法 test命令iftestexpr then fi if expr then fi Shell脚本基本语法 Shell脚本基本语法 定义 function func name dooperationon n 函数外的变量是全局的 local可指定局部变量 引用 func name param listadd RET 2 1 add101237 echo RET 函数 Shell脚本基本语法 三 学习使用Awk 语法实例 基本语法awk FEre vAssignment fProgramFile Program file输入 文件 命令行模式匹配1 正则表达式 开始使用awk 一个或多个前一个指定的字符 0个或一个前一个指定的字符 0个或多个前一个指定的字符 任意一个字符 或 前后两个字符串中的任意一个 m个r 至少m个r m到n个r 含m n abcde中任意一个字符 非abcde中任意一个字符 以abc开头 以abc结尾 2 关系表达式 匹配 不匹配 大于 大于等于 等于 不等于 3 条件组合Ere1 Ere2指定范围 Ere1到Ere2 将复杂的条件组合在一起 布尔组合4 BEGINEND模式BEGIN 在处理所有记录前执行 可用做初始化变量END 在处理完所有记录后执行 可用做输出处理结果 开始使用awk 开始使用awk 变量赋值name value特殊变量 1 n输入记录的个字段值 0 整个记录FILENAME当前输入文件的路径名称FNR当前文件中的当前输入记录的个数FS输入字段分隔符 单个字符或正则表达式 NF当前记录中的字段个数NR当前输入记录的个数RS输入记录分隔符 缺省值是换行字符 OFS输出字段分隔符 缺省值是空格 ORS输出记录分隔符 缺省值是换行字符 算术运算 流程控制1 if Expression Statement elseAction 2 while Expression Statement 3 for Expression Expression Expression Statement 4 break continue5 for VariableinArray Statement 6 if VariableinArray Statement 开始使用awk 7 deleteArray Expression 8 delete fdelete9 exit使用函数functionfunc name param1 param2 调用 RET func name param1 param2 functionaverage g n for iing sum sum g i avg sum nreturnavg 开始使用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 match String Ere split String A Ere 将String分割为数组元素A n tolower String 转换为小写字符串toupper String 转换为大写字符串sprintf Format Expr Expr 格式转换 用法同c3 时间函数mktime datespec 输入 YYYYMMDDHHMMSS 输出秒strftime format timestamp 输入秒 返回格式字符串systime 返回当前时间eg awk printstrftime b a mktime 20050513000000 开始使用awk 输出print ExpressionList Redirection Expression ExpressionList 待输出的字符串 由变量和常量字符串组成Redirection 输出到文件或做为其他命令的输入Expression Redirection的目的地址 文件名或其他命令printfFormat ExpressionList Redirection Expression printf语句将ExpressionList参数指定的表达式以Format参数指定的格式写至标准输出 Format同c语言 除了 c c 当变量为数字 则输出该数字的字符编码 c 当变量为字符串 则输出该字符串的第一个字符 开始使用awk 谢谢大家 无线产品部coonzhang rtx 9240分机 7235 正则表达式 regularexpression Back 一个正则表达式 就是用某种模式去匹配一类字符串的一个公式- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux 常用命令 Shell 基本 编程

链接地址:https://www.zhuangpeitu.com/p-6376272.html