все Python 3shlexпонятие
shlex
модуль
Разбор и экранирование строк в синтаксисе оболочки Unix: разбить командную строку, процитировать аргумент.
Синтаксис
import shlex
shlex.split разбивает строку команды на аргументы с учётом кавычек и экранирования — str.split ломает «my file.txt» на два куска. shlex.quote и shlex.join нужны в обратную сторону, когда команду всё же собирают строкой для оболочки. Правила здесь — POSIX-оболочки, а не cmd.exe Windows; а лучше всего вовсе передавать subprocess список аргументов без shell=True.
Примеры
import shlex
print(shlex.split('cp "my file.txt" backup/')) # → ['cp', 'my file.txt', 'backup/']
print(shlex.join(['echo', 'hello world'])) # → echo 'hello world'
print(shlex.quote("it's")) # → 'it'"'"'s'
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности