2013-05-05 3 views
-4

그 mktemp 폴더에있는 파일의 문자열을 대체 할 무언가가 필요합니다. 이 파일의 이름은 autounattend.cfg이며 % PASSWORD라는 문자열이 들어 있습니다.이 문자열은 args.password로 바꿔야합니다. 이렇게하는 방법 ???파이썬은 파일의 문자열을 대체합니다

import shutil 
from tempfile import mktemp 
import argparse 
import os 
import subprocess 
import re 

#Argumente umwandeln 
parser = argparse.ArgumentParser(description='Build ISO Image.') 
parser.add_argument('--source', '-sr', 
       action='store', 
       help='Sourcepath -sr or --source') 

parser.add_argument('--destination', '-dn', 
       action='store', 
       help='Targetpath -dn or --destination') 

parser.add_argument('--password', '-pw', 
       action='store', 
       help='Root image password -pw or --password') 

parser.add_argument('--networkmode', '-n', 
       action='store', 
       help='Networkmode -nm or --networkmode') 

parser.add_argument('--ipadress', '-ip', 
       action='store', 
       help='Ipadress -ip or --ipadress') 

parser.add_argument('--gateway', '-gw', 
       action='store', 
       help='Gateway -gw or --gateway') 

parser.add_argument('--nameserver', '-ns', 
       action='store', 
       help='Nameserver -ns or --nameserver') 

parser.add_argument('--netmask', '-nm', 
       action='store', 
       help='Netmask -nm or --netmask') 

parser.add_argument('--hostename', '-hn', 
       action='store', 
       help='Hostname -hn or --hostname') 

args = parser.parse_args() 

final_path = mktemp(prefix='tmpiso_', dir=args.destination) 
shutil.copytree(args.source, final_path) 

exit() 
+2

그리고 문제/오류가 무엇입니까? 게시 된 코드의 문제점은 무엇입니까? – fgb

+1

당신은 아마도 당신의 질문에 좀 더 명확해야하며 더 많은 정보를 제공합니다. – Serial

+0

아무 것도 없지만 그 mktemp 폴더에있는 파일에서 문자열을 대체 할 무언가가 필요합니다. 이 파일의 이름은 autounattend.cfg이며 % PASSWORD라는 문자열이 들어 있습니다.이 문자열은 args.password로 바꿔야합니다. 이렇게하는 방법 ??? 도와주세요. – vioman

답변

1

나는이 체크하지만,하지 :

import re 

file = open('autounattend.cfg', 'wb') 
content = file.readlines() 
content = re.sub(r'%PASSWORD', args.password, content) 
file.write(content) 
file.close() 

이 그것을해야

여기 내 코드입니다.

파일 경로 등을 추가해야합니다.

관련 문제