位置: 编程技术 - 正文

linux shell命令行选项与参数用法详解(linuxshell命令行)

编辑:rootadmin
问题描述:在linux shell中如何处理tail -n access.log这样的命令行选项?在bash中,可以用以下三种方式来处理命令行参数,每种方式都有自己的应用场景。1,直接处理,依次对$1,$2,...,$n进行解析,分别手工处理;2,getopts来处理,单个字符选项的情况(如:-n -f file.txt等选项);3,getopt,可以处理单个字符选项,也可以处理长选项long-option(如:--prefix=/home等)。总结:小脚本手工处理即可,getopts能处理绝大多数的情况,getopt较复杂、功能也更强大。1,直接手工处理位置参数必须要要知道几个变量, 手工处理方式能满足多数的简单需求,配合shift使用也能构造出强大的功能,但处理复杂选项时建议用下面的两种方法。例子,(getargs.sh):运行命令:2,getopts (shell内置命令)处理命令行参数是一个相似而又复杂的事情,为此,c提供了getopt/getopt_long等函数,c++的boost提供了options库,在shell中,处理此事的是getopts和getopt。getopts/getopt的区别,getopt是个外部binary文件,而getopts是shell builtin。getopts不能直接处理长的选项(如:--prefix=/home等)关于getopts的使用方法,可以man bash 搜索getoptsgetopts有两个参数,第一个参数是一个字符串,包括字符和“:”,每一个字符都是一个有效的选项,如果字符后面带有“:”,表示这个字符有自己的参数。getopts从命令中获取这些参数,并且删去了“-”,并将其赋值在第二个参数中,如果带有自己参数,这个参数赋值在“optarg”中。提供getopts的shell内置了optarg这个变变,getopts修改了这个变量。这里变量$optarg存储相应选项的参数,而$optind总是存储原始$*中下一个要处理的元素位置。while getopts ":a:bc" opt #第一个冒号表示忽略错误;字符后面的冒号表示该选项必须有自己的参数例子,(getopts.sh):执行命令:3,getopt(一个外部工具)具体用用法可以 man getopt#-o表示短选项,两个冒号表示该选项有一个可选参数,可选参数必须紧贴选项,如-carg 而不能是-c arg#--long表示长选项例子,(getopt.sh):运行命令:

标签: linuxshell命令行

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

上一篇:linux shell命令行参数用法详解(linux中shell命令)

下一篇:shell脚本中执行时提示“没有那个文件或目录”的解决办法(shell脚本中执行命令语句)

  • 增值税有哪些二类税种
  • 递延所得税负债账务处理
  • 企业所得税的纳税人有哪些简答题
  • 土建工程维修
  • 汇算清缴时有哪些需要调整的项目
  • 国内旅客运输票据
  • 购进生产设备的会计分录
  • 一般纳税人劳务费税率是13还是6
  • 注册地址与实际办公地址不一致怎么办
  • 职工集资建房款属公款吗
  • 期初数录错了怎么改
  • 嵌入式软件收入算制造业收入吗
  • 财报分析推荐书籍
  • 特殊业务分录
  • 待抵扣进项税贷方有余额什么意思
  • 企业转让股权收入应于转让协议生效时确认收入的实现
  • 纳税人必须关注的10个涉税风险点
  • 增值税申报表附表一填表说明
  • 其他收益纳税
  • 资产负债表应收账款是负数怎么回事
  • 残疾人不用交医保社保
  • 汽车装饰用品大全进货
  • 鸿蒙系统智慧场所在哪
  • linux bt命令
  • 发票填开的基本规定?
  • win10磁盘碎片整理打不开
  • 员工离职后公司还用照片
  • 本单位生产的水泥属于
  • 预收账款期末余额怎么算
  • 如何确定合伙企业的利润
  • vue路由使用方法
  • ccf noi指导教师认证考核
  • Css中的color属性用于设置html元素的背景颜色
  • 承兑汇票无法兑付
  • 资产支出加权平均数和一般借款本金加权平均数
  • 其他应收款个人挂账很大该怎么处理
  • 支付宝商户服务电话
  • 子公司注销时的账务处理
  • 固定资产后续支出一律计入固定资产成本
  • 企业做账的流程图
  • 个贷系统平账专户怎么做分录
  • 进项税额加计10
  • 估价入库的会计分录
  • 营利性养老机构有补贴吗
  • 应付账款账面价值怎么算
  • 小规模纳税人年底做账
  • 公司法人借款给企业属于关联交易吗?
  • 收到保险公司保险费会计分录
  • 企业接受捐赠的固定资产,应增加营业外收入
  • 农业生态有限公司成立条件
  • 实收资本怎么入账?
  • 全面解析皮炎
  • windows2003硬盘分区
  • freebsd使用wifi
  • 电脑硬件用途
  • Mac系统PPTP VPN图文设置教程
  • linux安装syslog
  • 富泽园假日酒店
  • win7系统360浏览器书签
  • Linux利用sftp命令传输文件(极少数人知道的方法)
  • win10激活过期有什么影响吗
  • 在linux中使用apache发布web服务时默认web站点
  • 宏基win8改win7
  • linux虚拟机安装windows
  • 摄像头挡住了
  • 在bootstrap中,有哪几种导航
  • 批处理/s
  • css vh兼容性
  • cocos2d-x教程
  • vue@cli
  • vue2.x
  • js 延迟函数
  • JavaScript中length属性的使用方法
  • android实现底部菜单
  • python中time模块源代码
  • python socketcan
  • javascript如何学
  • java面向对象和Java有区别吗
  • 社保申报截止日期每月2023年
  • 一个人可以申请
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设