Я пытаюсь реализовать команду шаблонов диапазонов sed в скрипте groovy.
Вот как я пытаюсь реализовать команду в скрипте groovy:
def range = sed -n -e /Word A/,/Word D/ p
def result = cat sample.txt | range.execute()
Этосодержимое файла sample.txt:
Word A
Word B
Word C
Word D
Word E
Word F
Это вывод, который я хочу:
Word A
Word B
Word C
Word D
Теперь ошибка, возвращаемая мне при запуске:
sed: unmatched '/'
Я полагаю, что причина, по которой я получаю эту ошибку, заключается в том, что в самой команде sed мне нужно каким-то образом сгруппировать шаблон диапазона, потому что я чувствую и фактически проверил его, sedКоманда применяется только к первому диапазону, то есть «WORD A», и затем она читает следующий «/» как буквенный символ, а не как символ, который инкапсулирует следующий шаблон, который является WORD D.
Я пробовалиспользовать одинарные и двойные кавычки, но при запуске моего скрипта я получаю сообщение об ошибке: sed unmatched "'" или sed unknown unknown.
В конечном итоге мне нужно как-то сказать следующее в groovy script:
sed -n -e (/Word A/,/Word D/ p)
Cкто-то, пожалуйста, помогите решить эту проблему, так как мне потребовалось два дня, чтобы разобраться с этим.
Спасибо!