我遇到的问题是当我有一个Perl脚本通过STDIN读取数据(PE可执行文件)并且流包含行终止符“0A”时,转换为十六进制错过了它.然后,当我将十六进制数据转换回来时,它已损坏(以十六进制格式丢失0A).那么如何在Perl中检测换行符“0A”的“
windows”版本呢?
注意:Linux OS(Perl)正在读取Windows PE
!usr/bin/perl while($line = <STDIN>) { chomp($line); @bytes = split //,$line; foreach (@bytes) { printf "%02lx",ord $_; } }
用法示例:
[root@myBox test]# cat test.exe | perl encoder.pl > output