[python] Jak udelat raw string.

dmichal na altien.com dmichal na altien.com
Úterý Leden 16 19:45:18 CET 2007


Zdravim,
pisu si script na kopirovani souboru mezi kompy(linux) pomoci scp. Ale
narazil jsem na problem pokud je v nazvu souboru mezera. Scp si s tim
poradi pokud to zapisu takto:

scp user na host:"\"/path/to file with spaces\"" /home/neco

mam kod:

import pexpect

dpath = '/home/neco'
shost = "user_name" + "@" + address + ":"
spath = r'"\"' + spath + r'\""'

#construct command to run
cmd = ('scp')
args = ['-v', str(shost + spath), str(dpath),]
    
#call new process
proc = pexpect.spawn(cmd, args)

Po spusteni mi z debugu beziciho scp vyskoci tohle:
debug1: Sending command: scp -v -f "\\"/path/to file with spaces\\""

Takze nejakym zpusobem mi tam nacpal 2 x backslash.

Napada vas nekoho jak ten kod prinutit aby promena spath byla opravdu
raw string?

Diky,
David




Další informace o konferenci Python