Я пытаюсь удалить ряд слов в командной строке Unix с sed из файла, и я просто не могу понять это. Например, как я могу удалить слова в позициях 2-4? Если файл содержит: «Это файл, созданный мной». Я хочу, чтобы это было: «Это создано мной». Спасибо большое!Удалить диапазон слов с помощью sed
0
A
ответ
1
Попробуйте это GNU СЭД (для печати слова 1 и слова 5 до последнего слова):
echo "This is a file created by me." | sed 'y/ /\n/' | sed -n '1p;5,$p' | sed 'N;N;N;y/\n/ /'
Выход:
This created by me.
+0
Спасибо большое! Я попытался использовать файл sed s/[a-zA-Z0-9] * [a-zA-Z0-9] // '2,4', но он не работает, я полагаю, что это не очень хорошо. – Eduard
1
Вы можете использовать также использовать awk
для этого:
echo "This is a file created by me." | awk '{for (i=1;i<=NF;i++) if (i<2||i>4) printf "%s ",$i;print ""}'
This created by me.
1
Это может сработать для вас (GNU sed):
sed -r 's/(\s+\S+){3}//' file
Смежные вопросы
- 1. Диапазон отступов с sed?
- 2. Удалить подстроку с помощью sed
- 3. удалить строку с помощью sed
- 4. Sed конец недопустимый диапазон
- 5. Удалить шаблон из переменной с помощью sed
- 6. Удалить шаблон кода с помощью sed?
- 7. Удалить цену из файла с помощью Sed
- 8. Удалить _ и - символы с помощью sed
- 9. Как удалить символ \ r с помощью sed
- 10. Как удалить строку с помощью sed?
- 11. Удалить «набор тегов xml» с помощью sed
- 12. Диапазон слов с контролем содержания
- 13. Как заменить диапазон шаблонов с помощью awk или sed
- 14. Удалить диапазон строк с помощью префиксного ключа
- 15. Удалить диапазон строк из файла с помощью сценария оболочки
- 16. Подстановка слов с помощью sed awk или grep
- 17. Поддержание множественности и правильной капитализации замещенных слов с помощью sed
- 18. Удалить дублирующиеся слова в строке с sed
- 19. Удалить спецификации исключений из кода на C++ с помощью sed
- 20. Удаление строки с помощью sed
- 21. Как игнорировать разделители слов в sed
- 22. sed + удалить «#» и пустые строки с одной командой sed
- 23. sed: изменить порядок слов и заменить
- 24. Удаление символов с помощью sed
- 25. Как удалить строки с определенным текстом с помощью команды sed?
- 26. Как удалить строку с пространством с помощью sed?
- 27. Удаление строк с помощью sed
- 28. Каков диапазон для ключевых слов?
- 29. Изменение цвета specfic диапазон слов
- 30. Вставка текста в диапазон слов
Просьба указать четкий образец ввода/вывода. i.e .: «У меня есть это» и «Мне нужно это» –
Это требование, которое вы используете 'sed'? Команда 'cut' будет работать намного лучше. – economy
'cut', как указано выше, или' awk' будет лучшим решением для такого рода проблем. Удачи. – shellter