闭包:闭包(Closure)是词法闭包(Lexical Closure)的简称,是引用了自由变量的函数。这个被引用的自由变量将和这个函数一同存在,即使已经离开了创造它的环境也不例外。所以,有另一种说法认为闭包是由函数和与其相关的引用环境组合而成的实体1、函数是一个对象2、函数执行完成后内部变量回收3、函数属性4、函数的返回值实例一、分别检测分数科目总分为100、150两种情况的成绩初级代码如下:#
需求: win主机上一个目录为备份目录,每天都会有增量文件,而我们要将这些增量文件全部copy到异地linux主机,如下图win主机:1、安装 rsync 客户端 (cwRsync)2、同步脚本linux主机:1、安装rsync服务即可linux配置:linux的rsync的配置如下:[tfsbackup] path=/data/tfsbackup c
需求:主机上有上百G的备份文件要rsync到远端主机,我们将大文件进行切割为几十个小文件进行多线程传输。这里使用14个1G的文件进行演示:[root@vm0 test]# pwd /root/test [root@vm0 test]# ll 总用量 13631540 -rw-r--r--. 1 root root&nb
本脚本功能:从数据库获取数据并且写入excel文件;(据官网显示已经废弃此模块)改用 Spreadsheet::ParseExcel及Spreadsheet::WriteExcel最好。前者是读Excel文件用的,后者用于写Excel文件。Spreadsheet::ParseExcel只能读95-2003格式的Excel文档,对于office 2007 Excel则要安装Spreadsheet::
作用一:可以分发一台机器,可以在线上测试用;作用二:可以批量分发多台机器,统一部署;见码: #!/usr/bin/perl use Getopt::Std; use Net::SCP::Expect; use strict; use vars qw($opt_s $opt_u $opt_H $opt_d $opt_p $opt_h); getopts('s:u:H:d:p:h'); my ($
本文系统Centos6.0Expect是Unix系统中用来进行自动化控制和测试的软件工具,由Don Libes制作,作为Tcl脚本语言的一个扩展,应用在交互式软件中如telnet,ftp,Passwd,fsck,rlogin,tip,ssh等等。该工具利用Unix伪终端包装其子进程,允许任意程序通过终端接入进行自动化控制;1、安装yum install expect expect-devel -y
本文是通过脚本过滤tomcat日志的一些信息;比如,一天访问的全部url的数次,某些url的次数,平均延迟,及时间段;并记录到当天的xlsx文件;大拿勿笑;#!/usr/bin/perl use Getopt::Std; use strict; use vars qw($opt_a $opt_i $opt_y $opt_h $opt_m $opt_s $opt_u $opt_t $opt_p);
案例;有5个数3 5 10 4 6 求出一个最大值;代码如下:#!/usr/bin/perl $maximum=&max(3,5,10,4,6); sub max { my ($max_so_far) = shift @_; foreach (@_) { if ($_ > $max_so_far) {
在Shell脚本中执行使用if语句的好处是:可以根据特定的条件(eg:判断备份目录是否存在)来决定是否执行某项操作,当满足不同的条件时执行不同的操作(eg:备份目录不存在则创建该目录,否则跳过操作)。该文将分别从条件测试操作,if语句结构,应用示例这三个方面讲解if语句在Shell脚本中的应用。1、条件测试操作:需要在Shell脚本中有选择性地执行任务时,首先面临的问题就是,如何设置命令执行的条件
一:Shell的作用及常见种类:Shell是一个特殊的应用程序,他介于操作系统内核与用户之间,负责接受用户输入的操作指令(命令)并进行解释,将需要执行的操作传递给内核执行。因此,Shell程序在系统中充当了一个“命令解释器”的角色,eg:微软的cmd.exe也属于Shell程序;在Unix/Linux操作系统中,能够使用的Shell程序有很多种,功能也比微软的“cmd.exe”要强大的多,下面就是
socket的英文原义是“孔”或“插座”。作为4BDS UNIX的进程通信机制,取后一种意思。通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄。在Internet上的主机一般运行了多个服务软件,同时提供几种服务。每
今天要在大量机器同一目录分发同一个文件,下面是脚本: 已经打通ssh通道(不打通也可以,因为我是使用指定用户执行的,不然老提示yes/no) #!/usr/bin/perl use strict; use Getopt::Std; use Net::SCP::Expect; use vars qw($opt_f $opt_l $opt_t $opt_h); getopts('
今天在机器装了一个模块,提示依赖什么需要其他的模块,因为我一般来说都是手动安装的 下载;解压;perl Makefile.pl; make; make test; make install 即可 依赖``的话 那就直线自动安装吧: 1>、perl -MCPAN -e shell (执行) cpan -i 模块名
目的:实现批量主机文件和服务的创建,将服务就写到了主机文件中; 用户change.sh linux.template(主机服务模版) list.txt (主机IP对应列表) catc change.sh usage () { &
今天要监控一个服务的进程___xl2tpd;该服务有几个IP就会有几个进程; 本来是想利用nagios的check_nrpe插件取值,然后判断报警,脚本写好了,本地测试正常,可是部署上去发现每次都取得反值,比如,现在有2个进程(2个IP),结果监控端取到值就是crit;郁闷啊;不知道这个nagios的check_nrpe是什么机制,第一次自定义; 最后没办法使用了check_pros com
需求:在多台机器需要同时执行文件,并且是不定期的,crontab不适用了,没办法了写了这个Script,简单也没什么错误提示,只为执行即可; 前提:在跳板机上已经和机器的ssh打通;在Script机器上安装perl模块Net::openSSH Net-OpenSSH-0.57.tar.gz 解压,发现需要安装其他模块; 逐个安装: 将上面的四个模块安装完毕; 编
#!/usr/bin/perl use Net::FTP; ( $day, $mon, $year) = (localtime)[3..5]; $mon=$mon+1; $year=$year+1900; $host_ip=`ifconfig eth0 |grep "inet addr" |cut -d: -f2 |cut -d" " -f
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号