awk + вырезать файл между строками из ext ARG

awk + вырезать файл между строками из ext ARG

У меня есть следующая команда awk. Я хочу вырезать файл от начала до конца. Пожалуйста, дайте совет, почему awk не работает.

   awk -v PARAM=start -v PARAM1=end '/PARAM/,/PARAM1/' file

файл:

2324
443
start
43
end
545

требуемый файл

start
43
end

решение1

Вы не можете использовать переменные между слешами. Используйте оператор сопоставления ~или оператор равенства ==:

awk -v PARAM=start -v PARAM1=end '$0 ~ PARAM,$0 ~ PARAM1' file

или

awk -v PARAM=start -v PARAM1=end '$0 == PARAM,$0 == PARAM1' file

Связанный контент