Есть ли в любом случае, чтобы вставить новые строки между 2 конкретными образцами символов?Я хочу вставлять новую строку каждый раз, когда "butterfly
" встречается в текстовом файле, однако я хочу, чтобы эта новая строка была вставлена между "butter
" и "fly
".Например, butter\nfly
Я также хочу найти длину каждой строки после разбиения.
Например:
, если текстовый файл содержит:
fgsccgewvdhbejbecbecbou бабочка bvdcvhkebcjl
vdjchvhecbih бабочка glehblejkbedk бабочка r
Затем я хочу получить результат, подобный следующему:
29 fgsccgewvdhbejbecbecboubutter
33 flybvdcvhkebcjlvdjchvhecbihbutter
22 flyglehblejkbedkbutter
4 flyr
Я полагаю, что один из способов решения этой проблемы - вставить новую строку, используя "sed
" везде, где встречается "butter
", а затем "fly
".Уберите всю пустую строку, используя grep
с флагом -v.Затем получите длину каждой строки.Однако даже после многих попыток я не могу получить правильный ответ.