perl利用什么语句可以检测并过滤掉带删除线(strikethrough)的文字

perl利用什么语句可以检测并过滤掉带删除线(strikethrough)的文字,第1张

OK,既昌雹然你知道怎么写perl,那么不细说其他。

你应该知道如何获取Font,对吧?而删除线是Font的一种。

{Font}->{Strikethrough} strike through: 0 or 1

如果匹乱蚂配到哗迅埋等于1,那么Filter

为了保护Perl源代码,常用的有三种方法。

1.

使用Perl自带的perlcc工具。这个工具有一个最大的弱点:它只能作用于拆瞎一个perl文件。假如你和我一样写了十几二十几个perl包,主程序里倒是空空如也,估计要郁闷死。用也是可以用的,就是要把所有的源代码copy到一个文件,取消所有的package定义,把原来不同package下面同名的函数改名,不同的package里面的同名全局变量也要改名。然后

$perlcc -o hello hello.pl

得到可执行程序hello. Perlcc的原理是把perl程序转换成C程序,然后用GNU

C编译器编译。它在Windows上也可以用,但需要额外安装C编译器,比如Intel C或者MS Microsoft Visual

C。由于perlcc把代码先变C再变可执行程序,反编译出来的源码很难看懂,所以安全性很高。但是把所有的代码写一个文件,模块也不能用了,这简直是从地铁时代回到乌蓬船时代,我想不会有人觉得舒服。何况这样混杂后的代码该如何维护升级和做版本控制呢,头大。另外,perlcc有申明,不保证它编译出来的东西能用(参见$perldoc

perlcc)。我没遇到这个情况,而是遇到了perlcc直接就对我的程序编译不通过,没戏唱了。{2006.12.15更新:找到perl不能编译我的程序的原因了:1.

只能用use 不能用require,模块文件名的后缀都改成.pm, use后跟不带后缀的文件名就可以。2.

所有的全局数组,必须用my, our,

或者local来定义,不可以用缺省作用范围。第二点其实应该是perlcc的一个bug了,因为关联数组和简单变量都没有这个问题。}

2. perl2exe,据说很好用,但令人沮丧的是要license, 而且据说跨平台还有问题。

3. PAR(Perl Archive Toolkit)。这个命名法则是类似于JAR(Java

Archive)。下载下来以后还要从CPAN上下载一些依赖性模块。CPAN模块果然好装,每个模块都是

$perl Makefile.PL

$make

$make install

就能装好。最后安装PAR。装好以后会在/usr/bin/下面添加一些工具。我不关心别的,就要用pp:

$pp -o hello hello.pl

这样生成的hello就是可执行文件厅芹,而且把用旅伏空到的perl模块文件也全打包进来了。运行的时候它会在/tmp/par-username/下生成一个叫

cache-123456789之类的临时文件夹,打开看看可以发现就是自己的源代码。这样不是没达到我想要的隐藏源代码的目的么?原来还需要启动过滤器:

$pp -f Bleach -o hello hello.pl

或者

$pp -f Bytecode -o hello hello.pl

前面的Bleach过滤器是PAR自己实现的,而Bytecode这种过滤方式是Perl的标准格式(需要Perl

5.8.1以上版本支持)。过滤之后,临时文件夹里面的文件就不是简单可读了。当然是有办法crack,

但这和恢复带初始变量名的源代码是两回事。

Linux下perl文件的执行

#! /usr/bin/perl

第一个“#”表示是这一行是注释

第二个“!”表示这一行不是普通注释,而是解释器路径的声明行

后面的“/usr/bin/perl”是perl解释器的安装路径,也有可能是:“/usr/local/bin/perl”,如果掘塌那个不行,就换这个。

这配模样修改后,文件就是这个模样:

#!/usr/bin/perl

#test.pl

print "test message! \n"

然后,给文件加上可执行的属性:

$ chmod 755 test.pl或者$ chmod +x test.pl

这两个命令用哪一个都可以。

现在执行吧:培散缓 $ ./test.pl


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12296656.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存