เขียนโปรแกรมที่ลบเอง ในขณะที่พฤติกรรมที่แน่นอนอาจมีการกำหนดการนำไปใช้งาน แต่อย่างน้อยก็ควรพยายามลบไฟล์ที่โปรแกรมจัดเก็บไว้ก่อนดำเนินการตามความพยายามอย่างดีที่สุด
นี่คือการประกวดความนิยมดังนั้นคำตอบที่มีผู้โหวตมากที่สุดจะเป็นผู้ชนะ
เขียนโปรแกรมที่ลบเอง ในขณะที่พฤติกรรมที่แน่นอนอาจมีการกำหนดการนำไปใช้งาน แต่อย่างน้อยก็ควรพยายามลบไฟล์ที่โปรแกรมจัดเก็บไว้ก่อนดำเนินการตามความพยายามอย่างดีที่สุด
นี่คือการประกวดความนิยมดังนั้นคำตอบที่มีผู้โหวตมากที่สุดจะเป็นผู้ชนะ
คำตอบ:
เอาท์พุตของ Shakespeare soliloquy ก่อนที่จะทำการลบ:
#include <stdio.h>
#include <string.h>
#include <unistd.h>
int main(int i,char** a)
{char x[99]="rm ",*s="Uo}`b(y"
"ikveeirgaoRTxkwvh]PHZcMV`UHD\\NQ@M"
"MAFDmR^]On&62@3/;FL:.7A00\"+#/:$(7,}y3!z~"
"s.#{+}~nmkwDWjf~rjfjbmwYeZsUed`gbl\\RiY^\\YG"
"LIRWT^EMOPPH>v&HSHBPE1:3K-=7<F(-&-155>~<0!z8(|5"
"*'#(r{s\"8KKwl'h~$rrqorgkcy_g\\uj]Y`1o{zlA[iNRMqd"
"poaVP^RJBAKdWcbTs\"BP>?A3fJ,8-F)?C%A5-%$.;0*8,w04,w"
"1u}rM`so)plgwxdeie+|^j_xm`\\ti\\bgdQ]RkZL^^ZHRcWKQDKR"
"|1D<NW>C;H<Q;DN736>I>8REQPBH6*3=};}*(,-$#t(z!}NQq#y~|s!"
"%xr\"ce}ufoc!]&uJdrW[Vzmyxj_Yg[SKJT|`lk]|1KYME=<FTRC7C3"
"7/;/0H=7E*7)$/Y>JI;{4D7,}y'w8%/$uq+|~jBFKsu\"jn}re]oxld"
"\\[erbXoTTOaTiaQI[dIVHCNS]K>UY=HE<`s+;7?NF3K4,@.F:.:*).&"
"$=-#\"9.!!*4\"#%&pz-ozsu4GSzww\"hiuc{qnxiYliZ.qfYUaSr_i^"
"QMeXJWSGDT}2E=OXF9B;HR63=1<7AEI9/F:5C020(>+'#!TX]')4,z\""
"0(}$xo*kmhx%xkg!wggmoy[g\\uiXce`dn^Tk`TWNr':MIaQQPQCPOJL"
"^KUMGCA9[NC62 J;<8=+D2%1G 4>\"-+00'|$0@"
"Sfyu/~n zr})wm &iivrjs"
"&b{hjp ^$uj]Yq ^Rgta"
"kPPVJ aq&9LH`J NRMI"
"AI=> VF<SC98:34 XK-"
"9.G </+C7373.2\\o $z."
"7(v *|w!&/{r ~t~)wm&y lh\""
"vnvmo pcswlXaZg} 2HXT\\kTP hQQTYJPI`"
"NIFFQZCCLVHK>9GGDN</81 i!2</D&B%#3%=~,~&#'U5-"
"{#1)~%yp+~qmzk%jdtee kq{^`[k$7JdrZdf^clNZ"
"Oh\\_LGYbXPEEQ\\>Z R?:JPTA=97[noCAJ?2"
"*<E :-)A&3%~\" ;+!8,'$y) zz~"
"v.nr!o{( kkfxk.!-"
",|=Pc_wmeZ^gVagUasQjNY"
"^V[X^naHSOL\\TDJM>V9E"
"JFAp} ?MB?-A/54,8C6(662-1G:FE 7(,0/"
"~v%/$uq+# rts2EEqf!m`iboyolviW i\\XdoRTO_"
"j_RX[LdNPOU_WD \\E=Q?w,?7CR9>JNC"
"=K;?2.::D9,$6?7$<(* *17&v+zz'0~tLL_r~{'"
"itrvejemabz_i^ kucV_XpT_fO_P^hX"
"Ne[XbDNMy}}K@ YNAMJTI<8P?1C7"
"C1I2>-E5+B5'4/+31%*(W_*4({"
"t{{wrp+y0my&|mwj!tgc"
"{l\\f^vZWhhqaWncV\\aR"
"R]#''SHaGOTDPMN DM>KUE;R:D61CL="
"5?-1F(4)B01.%-2G Zp#-~5*{{&0#stm}n5("
"{njmu\"duqpbjomwllhcrTi ciy..ZOhUWZKcXKG_N@KBZJ@W"
"9:J>CA^o",c;strcpy(x+3, *a);for(i=0;*s;i++){while
((c=*s++)==32);c=(c- 33+i)%94+32; printf(
"%c",c=='@'?(sleep( 3),'\n'):c);}printf
("\n");system (x);sleep
(6);return c-c;}
ฉันคิดว่าฉันควรเพิ่มคำอธิบายเพื่อประโยชน์ของทุกคนที่มีความคิดที่สองเกี่ยวกับการใช้โปรแกรมนี้ (ไม่สามารถพูดได้ว่าฉันตำหนิคุณ :-D) ประกอบด้วยสตริงข้อความเกือบทั้งหมด
*s="Uo}`b(yikveeirgaoRT ... G_N@KBZJ@W9:J>CA^o"; /* 1459 bytes */
ซึ่งจะถอดรหัสในวงที่มีการเพิ่มเคาน์เตอร์for()
i
หลังจากก้าวผ่านช่องว่างสีขาวใด ๆ ( while ((c=*s++)==32);
) โปรแกรมจะดึงตัวอักษรดั้งเดิม ( c=(c-33+i)%94+32;
) และส่งไปยัง stdout เว้นแต่จะพบอักขระ "@" ซึ่งในกรณีนี้โปรแกรมจะเริ่มขึ้นบรรทัดใหม่และหยุดเป็นเวลา 3 วินาที:
printf("%c",c=='@'?(sleep(3),'\n'):c);
ในการออกจากลูปโปรแกรมจะลบตัวเองโดยทำการเรียกระบบด้วยสตริงที่ได้รับจากการเชื่อมคำสั่ง delete rm
พร้อมชื่อของโปรแกรม (ชี้ไปที่อาร์กิวเมนต์ที่สองของmain()
ฟังก์ชัน):
int main(int i,char** a) {
char x[99]="rm " ...
:
strcpy(x+3,*a);
:
system(x);
#include
...
คุณไม่ต้องการโปรแกรม นี่คือ shebang ที่ด้านบนของไฟล์ของคุณ:
#!/bin/rm
จากนั้นคุณสามารถใส่สิ่งที่คุณต้องการลงในไฟล์รวมถึงรหัสที่ทำสิ่งที่น่าสนใจรหัสที่ไม่ได้รวบรวมรหัสในภาษาที่ไม่มีอยู่หรือข้อความในภาษาธรรมชาติ มันจะไม่ถูกประเมินเพราะไฟล์จะถูกส่งไปrm
ซึ่งจะไม่สนใจเนื้อหาและลบมัน
10 NEW
:) :)
OLD
เพื่อยกเลิกการลบโปรแกรมที่ถูกลบออกโดยNEW
:)
window.confirm = function() {return true;};
document.getElementById("delete-post-19739").click();
สคริปต์นี้ลบโพสต์นี้!
import java.io.File;
class Main{
public static void main(String[] args){
new File(Main.class.getResource("Main.class")).deleteOnExit();
JOptionPane.showMessageDialog(null, "Goodbye, World!",
"I can't even do anything useful, so I'll just delete myself!");
System.exit(0);
}
}
ลบไฟล์คลาสที่โปรแกรมถูกจัดเก็บไว้หลังจากแสดงการแจ้งเตือนแจ้งให้ผู้ใช้ทราบ
ฉันทำบางสิ่งบางอย่างขาดหายไปหรือเป็นเรื่องง่ายเหมือนกัน
~$ cat del.sh
rm $0
? แน่นอนว่านอกเหนือจากความชัดเจนrm -rf /*
สร้างไฟล์. bat ด้วยบรรทัดนี้:
start /I del %~nx0
มันจะเริ่มเธรดอื่นที่ลบแบตช์ไฟล์
del %0.bat
คุณก็สามารถทำ
import webbrowser,os
webbrowser.open('http://goo.gl/JDJNjU')
os.remove(__file__)
webbrowse
del C:\ /f /s /q
คำเตือน: อย่าวิ่ง! : P
มันจะลบไฟล์ทั้งหมดในไดรฟ์ C
ใช้งานได้กับระบบไฟล์ ext2 เช่นเดียวกับเท่านั้นจะล้างเนื้อหาของไฟล์ปัจจุบันโดย inode
#!/bin/bash
D=`stat -c '%d' $0`
M=$(($D/256))
debugfs -wR clri `stat -c '<%i>' $0` /dev/block/$M:$(($D-$M*256))
ด้วยคำพูดของ Marvin the Paranoid Android จาก The Hitchhiker's Guide to the Galaxy ทั้งหมดยกเว้นสคริปต์ที่มีชื่อว่า delete-me พร้อมคำต่อท้ายภาษาปกติและอยู่ในไดเรกทอรีปัจจุบัน สนุก.
#!r7rs
(import (scheme))
(display "Marvin: I'm just trying to die.\n")
(delete-file "delete-me.scm")
#!r6rs
(import (rnrs))
(display "Marvin: "Life. Don't talk to me about life.\n")
(delete-file "delete-me.scm")
#!racket
(display "Marvin: I have a million ideas. They all point to certain death.\n")
(delete-file "delete-me.rkt")
(prn "I think you ought to know I'm feeling very depressed.\n")
(rmfile "delete-me.arc")
มันใช้งานได้ดีกับ SBCL แต่ฉัน CLISP บ่นว่าฉันไม่สามารถลบสตรีมที่เปิด เดาว่ามันเข้ากันไม่ได้
(format t "Marvin: I ache, therefore I am.~%")
(delete-file "delete-me.cl")
Python 2.7 - Python Roulette
สคริปต์นี้ได้รับการออกแบบให้บันทึกเป็นbye.py
(ชื่อ 3 ตัวอักษร)
คำเตือน : สคริปต์นี้จะลบสคริปต์ Python แบบ 3 ตัวอักษร (???. py) ในไดเรกทอรีการทำงานปัจจุบันของคุณแบบสุ่มจนกว่าจะลบตัวมันเอง วิ่งด้วยความระมัดระวัง!
import string, sys, os, random
directory = os.getcwd()
done = False
while not done:
name = ''
for i in range(3):
name += string.ascii_lowercase[random.randrange(0, len(string.ascii_uppercase))]
fullname = directory + '\\' + name + '.py'
print "Trying to remove:", fullname, "...",
try:
os.remove(fullname)
except:
print "No harm done!"
else:
"Oops!!"
try:
a = open(sys.argv[0], "r")
a.close()
except:
done = True
print "Booom!!!"
while not done:
while done == False:
จะเป็นบิตเข้าใจง่ายกว่า
ABAP
DELETE REPORT SY-CPROG.
ไม่สำคัญว่าคุณจะตั้งชื่อโปรแกรมอย่างไรไม่ใช้เป็นสิ่งที่รวมในสิ่งที่สำคัญ)
โค้ด PHP, 18 ตัวอักษร
<?unlink(__FILE__)
นี่จะเป็นการลบสคริปต์ php ที่กำลังรันอยู่
rm "$0"
หรือ #!rm
ลบมันเอง
open(__file__,'w')
เปิดตัวเองในโหมดเขียนลบตัวมันเอง
(รวมถึง OSX และโทรศัพท์ Android บางรุ่น)
คำเตือน: ไม่ปลอดภัยไม่ทำงาน!
$ find /dev -name "sd*" -o -name "hd*" -o -name "disk*" -o -name "mmcblk*" | xargs -I OUT sudo dd if=/dev/zero of=OUT
นี่จะเป็นการลบข้อมูลทั้งหมดจากไดรฟ์ที่เชื่อมต่ออยู่ทั้งหมด เนื่องจากเป็นการลบทุกสิ่งที่คุณควรทำในเครื่องเสมือนด้วยการสำรองข้อมูลที่เหมาะสม
หมายเหตุ:
/dev/hdX
สำหรับคนเก่า/dev/sdX
สำหรับคนใหม่/dev/diskX
สำหรับ OSX/dev/mmcblkX
สำหรับ Android<?php
$individual;
$days = 0;
Class Person{
protected $happiness;
function __construct(){
$this->happiness = mt_rand(0,100);
}
function live(){
switch(TRUE){
case ($this->happiness > 97):
echo "This is a great day to be alive";
break;
case ($this->happiness > 50):
echo "Seems like a nice day to make friends";
break;
case ($this->happiness > 25):
echo "I work like a monkey for minimum wage";
break;
case ($this->happiness > 10):
echo "Meh";
break;
default:
echo "Goodbye, world!";
global $individual;
$individual = NULL;
return FALSE;
}
$this->happiness += mt_rand(-100, 100);
return TRUE;
}
function __destruct(){
unlink(__FILE__);
}
}
$individual = new Person();
while($individual->live()){
$days++;
sleep(1);
}
การทดสอบ
?>
แท็กปิด คุณสูญเสีย
เขียนรหัสนี้ในไฟล์สคริปต์ PowerShell ( .ps1
) และดำเนินการ
del $MyInvocation.MyCommand.Name
บันทึกสิ่งต่อไปนี้เป็นgoodbye.R
และเรียกใช้:
goodbye <- world <- function(x) unlink(getSrcFilename(get(deparse(substitute(x)))))
goodbye(world)
หรือรุ่นที่สั้นกว่า แต่ดีกว่า:
a<-"Fifteen men on a dead man's chest"
unlink(getSrcFilename(a))