#!/usr/bin/perl $_=++$_+$_;($:,$,,$*,$~,$.,$/)=($!=$_)=~/.(..)(.).(..)....(.)......(.).+?(.)$/; $@="$~$*$:";$_+=$_*=$_;($*,$:,$;)=($!=$_)=~/.(.)[^$.]+.(.)(.)/; $_/=$_;$|=$_++;`$@"$:$~$.$.$/ $*$:$;$," $|>&$_`; __END__ # obligatory sanity section (: $_=++$_+$_; # set $_ to 2; # note that pulling out of $! is system dependant, so this script will # probably only work right on Linux-based machines, as that's where it # was developed... # need to grab a few more chars out of here! r, s, y ($:,$,,$*,$~,$/,$.) = ($! = $_) =~ /.(..)(.).(..)....(.)......(.).....(.)/; # N(o )(s)u(ch) fil(e) or di(r)ector(y) # probably don't need to match the f, that's for the rm -rf precursor... $@="$~$*$:"; # sets $@ to 'echo', frees up those vars for re(ab)use $_*=$_+$_; # set $_ to 8 ($*,$:,$;) = ($!=$_) =~ /.(.)......(.)(.)/; # E(x)ec for(m)(a)t error # some fiddling so our shell output appears $_ /= $_; # set $_ to 1 (anything divided by itself...) $| = $_++; # set $| to 2, so we can redirect 2 -> 1 # dear god, what have I created?! print "$@ $:$~$/$/$. $*$:$;$, $|>&$_", "\n"; `$@ "$:$~$/$/$. $*$:$;$," $|>&$_`;