设为首页 收藏本站
查看: 934|回复: 0

[经验分享] perl命令行参数解析

[复制链接]
发表于 2015-12-27 15:06:18 | 显示全部楼层 |阅读模式
perl命令行参数解析

  mysql -h ip -u root  此类就属于命令行解析范畴了,不过mysql客户端貌似是C写的,当然perl也可以搞得像这样
  看起来灰常的酷,在CPAN上我们可以看到Getopt::Cmd和Getopt::Long这两个模块,从名字上我们就可以大致的猜出来,
  前者是支持-v这样的短命令的形式,另外一个是支持长命令如--host 这样的形式。
  OK,下面说下使用,如果没安装这两个Module,请自行安装。(直接CPAN安装或者perl MAKE.PL)
  先说Getopt::Cmd的使用
  use Getopt::Std;
  # -v ARG, -D ARG, -o ARG, sets $opt_v, $opt_D, $opt_o
  getopt("vDo");  
  # -v ARG, -D ARG, -o ARG, sets $args{v}, $args{D}, $args{o}  
  getopt("vDo", \%args);getopts("vDo:"); # -v, -D, -o ARG, sets $opt_v, $opt_D, $opt_o
  getopts("vDo:", \%args); # -v, -D, -o ARG, sets $args{v}, $args{D}, $args{o}
  很简单,相信看后面的注释都能看出来。
  再说Getopt::Long
  use Getopt::Long;
  GetOptions( "extract" => \$extract, "file=s" => \$file );  
  if ($extract) {  
  print "I'm extracting.\n";
  }
  die "I wish I had a file" unless defined $file;
  print "Working on the file $file\n";
  将--extract和--file的值分别保存在$extract和$file中。然后我们就可以进行其他操作了,至于你要问file=s中,哪个s是干啥的,
  s其实就是说明那是个字符串,更详细的说明看下表
DSC0000.jpg

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-157036-1-1.html 上篇帖子: perl变量 下篇帖子: 用Perl 修改CVS Root
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表