Я пишу сценарий python для замены / добавления определенных строк их эквивалентами ..
Фактическая строка:
Name = "com.icon.t2p"
Object = "/com/icon/t2p/host"
Ожидается Вывод:
Name = "com.icon.rma"
Object = "/com/icon/rma/Objectname/host"
Текущий вывод:
Name = "com.icon.rma"
Object = "/com/icon.rma/host"
Я запустил ниже в своем скрипте python:
cmdStr="sed -i 's/com.icon.t2p/com.icon.rma/g' /local/run.ini"
subprocess.call(cmdStr,shell=True)
cmdStr="sed -i 's/Object=\/com\/icon\/t2p\/host/Object=\/com\/icon\/rma\/Objectname\/host/g' /local/run.ini"
subprocess.call(cmdStr,shell=True)
Похоже, я делаю некоторую ошибку, так как добавление имени объекта не происходит ..
Как это можно исправить? ?
Бесполезно вызывать инструмент редактирования текста python bash
Name = Name.rsplit('.', 1)
Object = Object.split('/')
Name[1] = Object[2] = "rma"
Object.insert(3, "Objectname")
Name = '.'.join(Name)
Object = '/'.join(Object)
-
Name = Name.replace('t2p', 'rma')
Object = Object.replace('t2p', 'rma/Objectname')