位置: 编程技术 - 正文

shell编程基础知识小结(shell编程简单实例)

编辑:rootadmin

1、文件类型介绍linux系统中主要包括以下七种文件类型: d 目录 - 普通文件 l 符号链接 s 套接字文件 b 块设备文件 c 字符设备文件 p 命名管道文件

2、正则表达式正则表达式在shell编程中非常重要。

从一个文件或命令输出中抽取或过滤文本时。可使用正则表达式(RE),正则表达式是一些特殊或不很特殊的字符串模式的集合。

基本的元字符集:^ 只匹配行首。$ 只匹配行尾。* 一个单字符后紧跟*,匹配0个或多个此单字符。[] 匹配[]内字符,可以是一个单字符,也可以是字符序列。可以使用-来表示[]内范围,如[1-5]等价于[1,2,3,4,5]。屏蔽一个元字符的特殊含义,如$表示字符$,而不表示匹配行尾。. 匹配任意单字符。pattern{n} 匹配pattern出现的次数npattern{n,}m匹配pattern出现的次数,但表示次数最少为npattern{n,m} 匹配pattern出现的次数在n与m之间(n,m为0-)

常见例子:显示可执行的文件:ls ?l | grep …x...x..x只显示文件夹:ls ?l | grep ^d匹配所有的空行:^$匹配所有的单词:[A-Z a-z]*匹配任一非字母型字符:[^A-Z a-z]包含八个字符的行:^……..$(8个.)

更多内容,请查阅正则表达式的详细资料加深学习。

3、字符类描述常用的可用字符类列表:[:alnum:] 字母数字 [a-z A-Z 0-9] [:alpha:] 字母 [a-z A-Z] [:blank:] 空格或制表键 [:cntrl:] 任何控制字符 [:digit:] 数字 [0-9] [:graph:] 任何可视字符(无空格) [:lower:] 小写 [a-z] [:print:] 非控制字符 [:punct:] 标点字符 [:space:] 空格 [:upper:] 大写 [A-Z] [:xdigit:] 十六进制数字 [0-9 a-f A-F]

使用字符类可以更好地适应非英语 locale(包括某些必需的重音字符等)。

4、引号类型shell中共有四种引用类型:“ ”双引号‘ '单引号` ` 反引号 反斜线

说明:“ ”可引用除$、` 、 、外的任意字符或字符串,“ ”中的变量能够正常显示变量值。‘ '与“ ”类似,不同在于shell会忽略任何的引用值。例如: GIRL=‘girl' echo “The ‘$GIRL' did well” 则打印:The ‘girl' did well

说明: ` `用于设置系统命令的输出到变量,shell会将` `中的内容作为一个系统命令并执行质。 例如:echo `date` 则打印当前的系统时间。

说明: 用来屏蔽特殊含义的字符:& * + ^ $ ` “ | ? 例如:expr * 将输出

5、变量设置的几种模式变量设置时的不同模式:valiable_name=value 设置实际值到 variable_name中valiable_name+value 如果设置了variable_name,则重设其值valiable_name:?value 如果未设置variable_name,则先显示未定义用户错误信息valiable_name?value 如果未设置variable_name,则显示系统错误信息valiable_name:=value 如果未设置variable_name,则设置其值valiable_name-value 同上,但取值并不设置到variable_name

注:以上几种模式的灵活应用,将在很大程度上提升编程技巧。

6、条件测试test命令用于测试字符串、文件状态和数字,expr测试和执行数值输出。Test格式:test condition 或 [ condition ](需要特别注意的是condition的两边都要有一个空格,否则会报错),test命令返回0表示成功。下面将分别描述test的三种测试:文件状态测试(常用的)-d 测试是否文件夹-f 测试是否一般文件-L 测试是否链接文件-r 测试文件是否可读-w 测试文件是否可写-x 测试文件是否可执行-s 测试文件是否非空

1、字符串测试五种格式: test “string” test string_operator “string” test “string” string_operator “string” [ string_operator “string” ] [ “string” string_operator “string” ]其中string_operator可以为: = 两字符串相等 != 两字符串不等 -z 空串 -n 非空串

2、数值测试两种格式: “number” number_operator “number” [ “number” number_operator “number” ]其中:number_operator 可以为:-eq 、-ne、-gt、-lt、-ge

例如: NUMBER= [ “” ?le “” ?a “NUMBER” -gt “” ] (其中-a表示前后结果相“与”)

expr命令一般用于整数值,但也可以用于字符串。格式: expr srgument operator operator argument例如: expr + expr ^ 2 (的平方) expr $value +

增量计数--expr在循环中最基本的用法例如: LOOP=0 LOOP=`expr $LOOP + 1`

3、模式匹配:通过指定的冒号选项计算字符串中的字符数例如: value=account.doc expr $value : `(.*).doc` 输出 account

7、命令执行顺序

&& 成功执行一个命令后再执行下一个|| 一个命令执行失败后再执行另一个命令( ) 在当前shell中执行一组命令(格式:(命令1;命令2; ……)){ } 同( )例如: comet mouth_end || ( echo “hello” | mail dave ;exit ) 如果没有( ),则shell将直接执行最后一个命令(exit)

在shell编程中,命令执行顺序,有时决定了一个程序的执行结果,而&&与||应用最为广泛。

8、脚本调试脚本调试最有用的调试脚本的工具是echo命令,可以随时打印有关变量或操作的信息,以帮助定位错误。也可使用打印最后状态($?) 命令来判断命令是否成功,这时要注意的是要在执行完要测试的命令后立即

输出$?,否则$?将会改变。

Set命令也可以用来辅助脚本测试:Set ?n 读命令但是不执行Set ?v 显示读取的所有的行Set ?x 显示所有的命令及其参数要关闭set选项,只要把-换成+就可以了。

推荐整理分享shell编程基础知识小结(shell编程简单实例),希望有所帮助,仅作参考,欢迎阅读内容。

shell编程基础知识小结(shell编程简单实例)

文章相关热门搜索词:shell编程总结,shell编程简单实例,shell编程基本步骤,shell编程技巧,shell编程入门,shell编程教程,shell编程基础知识,shell编程基本步骤,内容如对您有帮助,希望把文章链接给更多的朋友!

awk基础知识小结第1/2页 1、使用规则awk适合于文本处理和报表生成,它还有许多精心设计的特性,允许进行需要特殊技巧程序设计。awk的语法较为常见。它借鉴了某些语言的一

ssh,scp自动登陆的实现方法 示例:A为本地主机(即用于控制其他主机的机器);B为远程主机(即被控制的机器Server),假如ip为...;A和B的系统都是Linux在A上运行命令:#ssh-keygen-trsa(

ssh自动登录的4种实现方法 1.自动ssh/scp方法A为本地主机(即用于控制其他主机的机器);B为远程主机(即被控制的机器Server),假如ip为...;A和B的系统都是Linux在A上运行命令:#ssh-ke

标签: shell编程简单实例

本文链接地址:https://www.jiuchutong.com/biancheng/376781.html 转载请保留说明!

上一篇:linux中常用脚本和函数分享(linux常用脚本代码)

下一篇:awk基础知识小结第1/2页(awk入门)

  • 增值税进项税额加计抵减政策
  • 啥叫总分类账
  • 已开票未确认收入怎么填写纳税申报表
  • 结转应交增值税到未交增值税
  • 一般纳税人必须开13个点吗
  • 劳务公司涉及的税收
  • 资产负债表所有者权益和利润表关系
  • 生产研发设备
  • 装修摊销是当月还是次月摊销?
  • 结转损益管理费用在借方
  • 纳税人多缴税款的退还期限
  • 职工与企业解除劳动合同后医保怎么办
  • 房产税从租计征的税率是12%还是4%
  • 应收账款计提坏账比例
  • 销售旧房不能取得评估价格
  • 管理费用对所得收入影响
  • 公司组织客户旅游费用怎么做账
  • 出差报销单可以委托他人签字吗
  • 无形资产投资入股增值税
  • 购货方申请红字发票怎么申报
  • 增值税已抵扣还能退税吗
  • 小规模季度不超30万需要交什么税
  • 资产负债表应交税费计算公式
  • 经营活动现金流量净额
  • 摊销合同取得成本分录
  • 商业承兑汇票是谁签发的
  • 所有者权益类科目借贷方向
  • 长期借款的核算思维导图
  • 差额征税的计算方式
  • 免税收入税额的含义
  • 增值税普通发票和电子普通发票的区别
  • wp网站迁移
  • compaq-rba.exe是哪个方面的进程 作用是什么 compaq-rba进程查询
  • 收到服务费发票怎么做账务处理
  • 房产证办理流程图
  • 土地开发公司是国企吗
  • 日出的时候是圣诞节
  • 企业所得税申报表A类
  • 中科院t1
  • html+php
  • 研发费用税前加计扣除金额怎么算
  • 应付职工薪酬如何确认
  • 个人所得税转账扣除子女教育那个什么时候可以提交
  • 哪些税费需要计提
  • 前端面试题汇总.pdf
  • java中空字符怎么表示
  • python中Plotly Express是什么?
  • 税务局退回来的钱账务处理
  • 更正申报补缴税款会影响记录
  • 金税四期介绍 王石
  • 企业给员工的福利体检报告
  • 本年计算扣除限额的基数计算公式
  • 企业营改增税率是多少
  • 收购分公司有什么要求
  • 分配利润给股东公司需要交税吗
  • 应收账款是什么意思
  • windows自带的几个软件
  • workflow software
  • mac使用ios
  • mac系统有txt吗
  • centos配置网络地址命令
  • win10系统wifi信号断断续续
  • 打开电脑显示配置windows,可是一直0%,怎么办
  • unity播放声音的方法
  • 每日十条中医用药经验
  • jquery 动态加载js
  • Sublime Text + decoda 调试Quick-cocos2d-x 游戏
  • jquery提交表单调用serialize方法
  • linux7 snmp
  • 进入dos命令行
  • android 侧滑页面
  • 狗刨怎么学
  • unity3ds
  • javascript入门基础
  • jquery节点操作
  • [推荐]抖音上那些好看的视频和有才的帐号
  • 北京交通政务
  • 浦发银行企业银行电话
  • 大连地税局发票怎么开
  • 税局签三方
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设