![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
perl
beeworkshop
长风破浪会有时,直挂云帆济沧海
展开
-
Perl+Expect登陆多台设备批量执行命令+Log
尝试使用Perl脚本借助Expect模块实现如下目的:登陆多台设备设备登陆信息按如下格式存放于文件中。$ cat hosts.txt192.168.30.7:node1:telnet:bee1:123456192.168.30.66:node2:ssh:bee2:123456在每台设备上批量执行命令要执行的命令集合按如下格式存放于文件中。$ cat cmds.txtda...原创 2019-08-11 00:39:42 · 372 阅读 · 0 评论 -
Perl学习笔记-10
其他应用grep操作符获取1000以内的奇数my @odd_numbers=grep { $_ % 2 } 1..1000;从文件中取出包含baby的行my @matching=grep { /\bfred\b/i } <$fh>;或my @matching=grep /\bfred\b/i, <$fh>;my $count=@matching或者m...原创 2019-08-09 18:54:13 · 175 阅读 · 0 评论 -
Perl学习笔记-9(切片)
列表切片必须在()的后边有一个[]。函数为引入参数而使用的()不算。基本用法my $mtime=(stat $some_file)[9]; #第10列my $work=(split /:/)[3];my ($name, $age)=(split /:/)[1, 5];my ($first, $last)=(sort $info)[0, -1];my @nums=(@names)[...原创 2019-08-09 16:36:56 · 268 阅读 · 0 评论 -
Perl学习笔记-8(系统管理)
操作系统资源管理调用进程system()system 'date';防止perl变量内插可以1) 使用单引号system 'ls -l $HOME';2) 使用转义字符system "ls -l \$HOME";perl程序为父进程。启动的进程的标准输入/输出,错误输出会定向到perl相关句柄指向的地方。同时,启动的进程会继承perl父进程的环境变量(可以在perl程序...原创 2019-08-09 16:02:13 · 189 阅读 · 0 评论 -
Perl与密码
Perl与密码密码破解工具John the RipperCrack密码生成use Data::SimplePassword;my $dsp=Data::SimplePassword->new();#生成10个字符长度的随机密码。可以使用chars()方法指定要选用的字符。print $dsp->make_password(10), "\n";也可以us...原创 2019-08-19 00:48:54 · 289 阅读 · 0 评论 -
Perl学习笔记-7
智能匹配操作符智能匹配操作符是:“ ~~ ”他会根据两边操作数的数据类型自动判断该用何种方式进行比较或匹配。如果两边的操作数都像数字就按数值来比较大小;如果看起来像字符串,就按字符串方式比较;如果某一端操作数是正则表达式,就当做模式匹配来执行(具有变量绑定 =~ 的功效)。模式匹配基本例子my $flag=0;foreach my $key (keys %names){ next...原创 2019-08-09 10:39:33 · 134 阅读 · 0 评论 -
Perl日志处理小贴士
Perl日志处理Perl能够使你称为Doolittle,不过是通过日志与系统交流。读取日志文件#!/usr/bin/perl -w 2 3 $logfile="log/secure"; 4 open LOG, "<", "$logfile" or die "Unable to open $logfile: $!\n"; 5 while(<LOG>){...原创 2019-08-18 21:34:33 · 333 阅读 · 0 评论 -
Perl学习笔记-6
字符串函数操作搜索子串搜索第一次出现的位置找出子串在母串中的相对位置$where=index($big, $small);$where=index($big, $small,$start_with);返回位置从0算起。无法找到返回-1。搜索最后一次出现的位置my $last_slash=rindex("/etc/passwd", "/");求子串my $pa...原创 2019-08-05 01:49:22 · 153 阅读 · 0 评论 -
Perl学习笔记-5
一. 文件测试获得帮助perldoc -f -e测试应用#-e 测试文件是否存在die "Oops!A file called '$filename' already exists.\n" if -e $filename;#-M 文件最后一次修改时间到当前时刻之间的天数warn "Config file is looking pretty old~\n" if -M CO...原创 2019-08-04 23:49:53 · 219 阅读 · 0 评论 -
Perl学习笔记-4(模块)
Perl模块寻找模块可以到CPAN(Perl综合典藏网)。网址 https://metacpan.org/看看有没有安装了模块$ cpan -a可以使用grep过滤特定的模块确定指定模块有没有安装$ perldoc <module>比如,查看CGI.pm模块有没有安装$ perldoc CGI安装模块使用ExtUtils::MakeMaker$...原创 2019-08-04 21:30:29 · 323 阅读 · 0 评论 -
Perl学习笔记-3
表达式修饰符为了进一步简化代码书写,表达式后边可以接一个用于控制它行为的修饰符。if修饰符print "$n is a negative number.\n" if $n <0;即使表达式修饰符写在后边,它任然会先执行。其他修饰符&report("something wrong") unless &okok($input);$i *= 2 unti...原创 2019-08-04 16:13:43 · 197 阅读 · 0 评论 -
Perl学习笔记-2(正则表达式)
Perl的正则表达式支持原创 2019-08-04 01:28:40 · 292 阅读 · 0 评论 -
Perl学习笔记-1
CPAN网站 https://metacpan.org/perl脚本的shebang[ʃɪˈbæŋ]行which perl#!/bin/perl#!/usr/bin/perl分号的作用是分隔不同的perl语句,而不是断行。第一个样例#!/usr/bin/perl@lines=`perldoc -u -fatan2`;foreach(@lines){ s/\w<[...原创 2019-08-04 01:14:21 · 304 阅读 · 0 评论