是否有可能为一个程序来创建动态的名称,它启动过程? 考虑著名的fork炸弹的代码:
:(){ :|:& };:
要么
import os
while os.fork() or True: os.fork()
有没有可能让它生成每次它执行时一个新的随机过程的名字吗? 这将使很多难以摆脱。 这并不一定是在Perl或Python,我很乐意看到其他语言的例子太多。
是否有可能为一个程序来创建动态的名称,它启动过程? 考虑著名的fork炸弹的代码:
:(){ :|:& };:
要么
import os
while os.fork() or True: os.fork()
有没有可能让它生成每次它执行时一个新的随机过程的名字吗? 这将使很多难以摆脱。 这并不一定是在Perl或Python,我很乐意看到其他语言的例子太多。
它通常是可以设置的进程名,但这种能力从操作系统OS变化。 在Perl中,我们可以分配到$0
变量,从而改变当前进程名:
for my $i (1 .. 5) {
fork && next;
$0 = "foobar: $i";
sleep 5;
exit;
}
print for grep /foobar/, `ps aux`;
它产生的输出:
1000 1231 0.0 0.0 7836 552 pts/5 S+ 13:32 0:00 foobar: 1
1000 1232 0.0 0.0 7836 552 pts/5 S+ 13:32 0:00 foobar: 2
1000 1233 0.0 0.0 7836 552 pts/5 S+ 13:32 0:00 foobar: 3
1000 1235 0.0 0.0 7836 552 pts/5 S+ 13:32 0:00 foobar: 4
1000 1236 0.0 0.0 7836 552 pts/5 S+ 13:32 0:00 foobar: 5
或类似的东西。 我不知道如何做到这一点可以做到,但外壳和Python应该有类似的功能。