当前位置:首页 » 网页前端 » perl脚本为啥输出文件为空
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

perl脚本为啥输出文件为空

发布时间: 2022-07-18 14:20:17

㈠ perl脚本问题。

哈哈,又是你啊~~~
1. 循环结构没问题,但是就象我上次说的那样,
for (my $i=0;$i<@file;$i++)带有c的风格,perl的执行效率不高。建议用
foreach $file_name (@file)

2. 正则有问题,首先有个基本问题要搞清。"_"下划线是不需要转义的,所以不需要\,"."在匹配点号时需要转义,当然.号也算是一个非分隔字符,也能被匹配,只是那样做不是很好。
我的正则: $file_name =~ /.+_(\d)+-(\d)+\.(\d)+\.\w+/
前提是文件名只是诸如:PM_200901091100-200901091200.86.xml这种包含数字字母的文件名。

㈡ 我用的老师的perl脚本运行没有报错,但是却输出了空txt

输出空白文档,并不一定就要报错的。可能是open 新建txt后面的语句匹配不到相对应的内容

㈢ perl 脚本中的 delete 与置空操作效果

赋一个空值,该键仍然存在,只是其value为“”罢了;
而delete则将该键删除,当“键-值”对少的时候看不出来差别,多了就明显了

㈣ 电脑在windows下写了一个perl脚本,是关于数据的的读取和输出的,但是在CMD上运行程序后没显示结果和报错

输入 perl test.pl 然后就能执行了。其中test.pl是你所要运行的文件的名称用命令指示符则说不是内部或外部的命令。这个说明安装没有自动把perl的文件路径自动添加到环境变量中去。具体方法:右击我的电脑--属性--高级--环境变量--在系统变量部分--双击path--在最后添加你perl的安装路径。例如;C:\Perl\bin 另外一种方法,你也可以安装activeperl 5.10.0 它会自动添加环境变量

㈤ perl 判断文件是否为空

my $filename = "1234";
my ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$mtime,$ctime,$blksize,$blocks) = stat($filename);
if($size == 0)
print "空文件";

㈥ 求大神看看这段perl脚本出错的原因。

my $id定义在上面的for循环内部,属于局部变量,所以出了那个循环就无效了。
从你程序看,好象是你的第二个循环里,应该少了一句my $id=$H{$i};

㈦ perl脚本问题求指教!

perl脚本的内容仅包括如下这部分:

#!/usr/bin/perl
#writebyhuabo,2009-11-20
usewarnings;
usestrict;
#openthesvnpasswdfile
open(FILE,"passwd")ordie("Cannotopenthepasswdfile!!!n");
#cleartheapachepasswdfile
open(OUT_FILE,">webpasswd")ordie("Cannotopenthewebpasswdfile!!!n");
close(OUT_FILE);
#begin
foreach(<FILE>){
if($_=~m/^[^#].*=/){
$_=~s/=//;
`htpasswd-bwebpasswd$_`;
}
}

至于:

#chmod+xPtoWP.pl
#./PtoWP.pl

是你应对这个perl脚本在CentOS下做权限修改,并执行的命令。

Addingpasswordforuserpm
Addingpasswordforuserserver_group
Addingpasswordforuserclient_group
Addingpasswordforusertest_group

上面这部分是执行之后的输出结果。


这个脚本的目的是将SVN的账户信息同步到apache里去。

㈧ 用perl写数据到excel中时,为什么表头有了,就是下面的内容一直为空呢

use Spreadsheet::WriteExcel;

# 创建一个新的EXCEL文件
my $workbook = Spreadsheet::WriteExcel->new('PERL生成.xls');

# 添加一个工作表
$worksheet = $workbook->add_worksheet();

# 新建一个样式
$format = $workbook->add_format(); # Add a format
$format->set_bold();#设置字体为粗体
$format->set_color('red');#设置单元格前景色为红色
$format->set_align('center');#设置单元格居中

#使用行号及列号,向单元格写入一个格式化和末格式化的字符串
$col = 1;
$row = 2;
$worksheet->write($row, $col, 'Hi 2,1!', $format);
$worksheet->write( $col-1, $row-1 , 'HI 0,1!');
$worksheet->write(1, $col, 'Hi 1,1!');

#使用单元格名称(例:A1),向单元格中写一个数字。
$worksheet->write('A3', 1.2345);
$worksheet->write('A4', 'LOVE KUNKUN',$format);
$worksheet->write('B3', 1);
$worksheet->write('B4', 2);
$worksheet->write('C3', 3);
$worksheet->write('D3', 4);
$worksheet->write('E3', 5);
$worksheet->write('F3', 6);