Я пишу groovy метод для удаления символов новой строки из файла.
def removeEmptyLines(filePath){
cmd="""sed -i '/^\$/d' ${filePath}
"""
println cmd
result = cmd.execute()
result.waitFor()
println result.exitValue()
}
removeEmptylines("/path/to/file.txt")
Мой вывод:
sed -i '/^$/d' /path/to/file.txt
1
файл остается неотредактированным и, очевидно, выход статус ненулевой однако, если я буквально копирую и вставляю первый вывод в командную строку, это работает. Я использую абсолютные пути.
Я предполагаю, что groovy не нравятся символы регулярного выражения в моей команде. как мне обойти это?