- มีความท้าทายในการแฮ็ก
- ฉันมีไฟล์ที่ป้องกันด้วยรหัสผ่านชื่อ "ล็อค"
- การเปิดไฟล์ด้วยรหัสผ่านจะส่งคืนรหัส QR
- จำเป็นต้องกำหนด QR ให้กับ var
- ไม่ต้องการแสดง QR ทุกครั้ง
ใช้งานได้ แต่มีเอาต์พุต:
var = os.system("./lock %s" % password)
ดังนั้นบอกว่าฉันควรใช้:
var = subprocess.Popen("something.py")
พยายามที่จะผ่านเหมือนด้านบน แต่นั่นล้มเหลวเพราะ "Popen" ต้องการรายการหรือสตริง ถ้าฉันต่อคำสั่งเป็นสตริงก่อนใช้ popen คำสั่งจะยังคงแสดงอยู่
อ่านแล้ว (อย่างน้อย)
ระงับเอาต์พุตของกระบวนการย่อย การส่งผ่านตัวแปรไปยัง Subprocess.Popen วิธีเรียกใช้คำสั่งแต่ไม่ได้รับเอาต์พุต
รหัสเต็ม:
import sys
import os
import subprocess
def file_len(fname):
with open(fname) as f:
for i, l in enumerate(f):
pass
return i + 1
lock = "/root/share/lock"
print "Hello"
passfile = raw_input("Enter the password file name: ")
assert os.path.exists(passfile), "I did not find the file at, "+str(passfile)
devnull = open(os.devnull, 'wb')
trys = file_len(passfile)
passfile = open(passfile,'r+')
cnt = 1
wrong = os.system("./lock penis")
for password in passfile:
# com = ("./lock %s" % password)
# var = os.system("./lock %s" % password)
var = subprocess.Popen("./lock %s" % password, stderr=devnull, stdout=devnull)
if var == wrong:
os.system('clear')
cnt += 1
print ("Try %s/%s " %(cnt, trys))
print ("Currently PIN: %s" % password)
else:
print "!!!!!!!!!!!!!!!!!"
print password
การเปลี่ยนเส้นทางไปยัง devnull ก็ไม่ได้ผลเช่นกัน OSError: [ข้อผิดพลาด 2] ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว: ''