Команда Python Running OS с кавычками внутри
#!/usr/bin/python
import os
readLine = open('desktops.txt','r')
for line in readLine:
machineName = line
query = os.system('wmic -U corp.fakedomain.com/domainusername%password //192.168.1.100 "Select * from Win32_UserAccount Where LocalAccount = True"|grep "500|"|cut -d "\\" -f 2|cut -d "|" -f1')
Я получаю следующую ошибку...
myhostname: ~ #./getLocalAdminNames.py sh: синтаксическая ошибка: неопределенная строка в кавычках sh: синтаксическая ошибка: неопределенная строка в кавычках sh: синтаксическая ошибка: неопределенная строка в кавычках sh: синтаксическая ошибка: неопределенная строка в кавычках sh: синтаксическая ошибка: неопределенная строка в кавычках
Затем, после устранения ошибки, я хотел бы заменить IP-адрес переменной machineName.
Любая помощь будет принята с благодарностью.
1 ответ
Решение
Вы должны избежать ваших обратных наклонных черт. замещать \\
с \\\\
:
os.system('wmic -U corp.fakedomain.com/domainusername%password //192.168.1.100 "Select * from Win32_UserAccount Where LocalAccount = True"|grep "500|"|cut -d "\\\\" -f 2|cut -d "|" -f1')
или, сделайте свою строку raw
добавляя r
префикс:
os.system(r'wmic -U corp.fakedomain.com/domainusername%password //192.168.1.100 "Select * from Win32_UserAccount Where LocalAccount = True"|grep "500|"|cut -d "\\" -f 2|cut -d "|" -f1')
Также см: