perl 语法的变态在下面的代码中体现更甚,一条没头没尾的正则,不知道的还以为是语法错误,实际它是可以正常执行的。
代码语言:javascript复制#!perl
my $sFile = "d:/code/FindWord.pl";
# < 代表读,>代表截断写,>>追加写
if (open(READFILE, "<$sFile")) {
while (<READFILE>) {
s/^s*//; # 正则这样写就行了,不用指明对谁作用
print "$_"; # 内置变量,上面正则相当于对这个内置变量操作
}
close(READFILE);
}
# get 读一个字符
while ($get = getc READFILE) {
print $get;
}
# 追加写文件
if (open WRITEFILE, ">>$sFile") {
print WRITEFILE ("New Line...n");
close(WRITEFILE);
}
# 拷贝文件
open SRC, "<C:/test.pl";
open DST, ">C:/test.bak.pl";
while (<SRC>) {
print DST $_;
}
close(DST);
close(SRC);
# 重命名文件
rename ("C:/test.bak.pl", "C:/test.bak.pl.rename");
# 删除已存在的文件
unlink ("C:/test.bak.pl.rename");
# 设置文件指针
open SRC, "<C:/test.pl";
print ("Before:" . (tell SRC) . "n");
for (my $idx = 0; $idx < 10; $idx ) {
seek SRC, 256, 0;
}
print ("After:" . (tell SRC) . "n");