2014-02-10 6 views
1

У меня есть файл с именем «silent.txt». Этот файл, имеющий следующую строкуЗамените строку в файле с помощью groovy

bop4InstallDir = myProps.cordys_install_dir + "/" + instanceName 

Я хочу, чтобы заменить вышеуказанный текст с

bop4InstallDir = "/abc/xyz/pqr" 

Использование заводной сценарий, как я это сделать? Пожалуйста, помогите.

ответ

1

Следующий код работает:

def file = new File("silent.txt") 
def fileText = file.replaceAll("bop4InstallDir\\ \\=\\ myProps.cordys_install_dir\\ \\+\\ \"\\/\"\\ \\+\\ instanceName", "bop4InstallDir\\ \\=\\ \"/opt/cordys/bop4/defaultInst1\"") 
    file.write(fileText); 
1

Не очень элегантный, но это должно работать.

def file = new File("silent.txt") 

file.text = file.text.replace('bop4InstallDir = myProps.cordys_install_dir + "/" + instanceName', 
'bop4InstallDir = "/abc/xyz/pqr"') 
+0

Его не работает. Ошибка похожа на «ожидающий EOF, найденный»). @ Строка 6, столбец 34. 'bop4InstallDir = "/ abc/xyz/pqr"') " – user3291679

+0

Я думаю, что вы потеряли кавычки. Скопируйте код, как указано выше, а затем попробуйте. – kunal

+0

Скопированный код не работает. У меня есть кое-что, что нужно делать с такими особыми символами, как '/', '+' ... – user3291679

0

Является ли silent.txt хорошо отформатированным файлом свойств? В этом случае вы можете использовать различные способы доступа к ним, гораздо более безопасные, чем немые.

Look groovy: How to access to properties file? или ConfigSlurper

+0

Его не файл свойств. Это отличный сценарий. – user3291679

Смежные вопросы