在Perl中解析由​​空字节分隔的字符串

emx*_*emx 8 perl null unpack

的/ proc文件系统包含了正在运行的进程的详细信息.例如,在Linux上,如果PID为123,则该进程的命令行将在/ proc/123/cmdline中找到

所述CMDLINE使用空字节的参数分开.

我怀疑应该使用解压缩,但我不知道如何,我使用各种模板("x","z","C*","H*","A*"等)的悲惨尝试不工作.

lan*_*nzz 9

一个简单split("\0", $line)的工作就好了.


Vi.*_*Vi. 5

你可以设置$/"\0".例:

perl -ne 'INIT{ $/ = "\0"} chomp; print "$_\n";' < /proc/$$/environ
Run Code Online (Sandbox Code Playgroud)