uniicode and executing a process with subprocess.call, or os.system
python at mrabarnett.plus.com
Sun Jul 19 01:07:12 CEST 2009
Rick King wrote:
> I want to copy files using subprocess.call or os.system where the file
> names are non-ascii, e.g. Serbian(latin), c's and s's with hacheks,etc.
> Windows stores all the file names in unicode so they are displayed ok in
> explorer, and I can read them into my program with listdir(u'.'), etc.
> and work with the names in the program.
> can be used to rename such files successfully.
> But I want to be able to copy files using:
> cmdstr = u'copy' +u' /Y "'+pair+u'" "'+pair+u'"\n'
> cmdstr = cmdstr.encode(sys.getfilesystemencoding())
> try: retcode = sp.call(cmdstr, shell=True) #SP=SUBPROCESS
> but the encoding can't handle all the characters and so the file isn't
> found to be copied. sp.call() returns 1. 'mbcs' encoding doesn't work
> either. 'utf-8' doesn't work.
> I am very confused about unicode. Can someone point me in the right
> windows xp sp2
> python 2.6.2 unicode
Use the shutil module.
More information about the Python-list