Я хочу, чтобы sed печатал строки от соответствия регулярному выражению 1 до математического регулярного выражения 2
но seq 1 10 | sed -n '/1/,/5/p'
вывод
1
2
3
4
5
10
не
1
2
3
4
5
почему
Я хочу, чтобы sed печатал строки от соответствия регулярному выражению 1 до математического регулярного выражения 2
но seq 1 10 | sed -n '/1/,/5/p'
вывод
1
2
3
4
5
10
не
1
2
3
4
5
почему
10
соответствует /1/
. Вы можете использовать sed -n '/\<1\>/,/\<5\>/p'
для сопоставления чисел как целых слов. Или sed -n '/^1$/,/^5$/p'
, чтобы сопоставить их как целые строки. 19.04.2017 Для вашего намерения это должно быть:
seq 1 10 | sed -n '/^1$/,/^5$/p'
В вашем случае /1/
будет соответствовать не только 1
, но и 10
(или любой строке, содержащей 1
)