Заставить shlex.split уважать UNC-пути

Я использую shlex.split для токенизации аргументов для вызова subprocess.Popen . Однако, когда один из этих аргументов является UNC-путем, все становится непросто:

import shlex

raw_args = '-path "\\\\server\\folder\\file.txt" -arg SomeValue'
args = shlex.split(raw_args)

print raw_args
print args

производит

-path "\\server\folder\file.txt" -arg SomeValue
['-path', '\\server\\folder\\file.txt', '-arg', 'SomeValue']

Как вы можете видеть, обратная косая черта в начале сокращена. Я работаю над этим, добавляя следующие две строки, но есть ли способ лучше?

if args[0].startswith('\\'):
    args[0] = '\\' + args[0]
6
задан Adam Lear 28 January 2011 в 16:54
поделиться