Масштабное редактирование потоков с sed и tr
Применяйте преобразования на основе регулярных выражений к потокам с помощью подстановки sed, а также переводите или удаляйте символы с помощью tr.
«Масштабное редактирование потоков с sed и tr» — бесплатный урок Linux Command Line Mastery на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Linux Command Line Mastery, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Linux Command Line Mastery содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
From Matching to Transforming
You have mastered regex matching with grep and find. The natural next step is transforming the text you match. sed and tr turn your regex skills into edits.
sed Substitution Basics
The s/pattern/replacement/ command replaces the first match per line. Add g for all matches.
echo 'cat cat cat' | sed 's/cat/dog/g'Using Regex in sed
sed -E enables extended regex so you can use +, ?, and groups without backslashes.
echo 'a123b' | sed -E 's/[0-9]+/#/'Capture Groups and Backreferences
Parentheses capture parts of the match; \1, \2 reuse them in the replacement. Here we swap two words.
echo 'John Smith' | sed -E 's/(\w+) (\w+)/\2 \1/'Anchoring Substitutions
Use ^ and $ to act only at the start or end of a line, e.g. prefixing every line.
printf 'one\ntwo\n' | sed 's/^/> /'Deleting and Selecting Lines
sed can target lines by pattern: /regex/d deletes matching lines, while -n '/regex/p' prints only matches.
printf 'keep\ndrop me\nkeep\n' | sed '/drop/d'In-Place Editing
sed -i edits a file directly. Always keep a backup with -i.bak until you trust the command.
sed -i.bak 's/localhost/127.0.0.1/g' config.confMeet tr
tr translates or deletes characters (not regex). It reads stdin only. Here we uppercase text.
echo 'hello' | tr 'a-z' 'A-Z'Deleting and Squeezing
tr -d removes characters and tr -s squeezes repeats into one, great for cleaning whitespace.
echo 'a b c' | tr -s ' 'Combining sed and tr
Chain them: normalize a CSV by converting commas to newlines and stripping carriage returns.
echo 'a,b,c' | tr ',' '\n' | sed 's/^/item: /'When to Use Which
Reach for sed when you need patterns and line logic; reach for tr for fast single-character translations and deletions.
Quick Check
You want to replace every occurrence of a word on each line with sed. What must you add?
Recap
You can now transform streams with regex:
sed 's///g'substitutes;-Eenables extended regex;\1reuses captures/re/dand-n '/re/p'select linessed -i.bakedits files safelytrtranslates, deletes (-d), and squeezes (-s) characters
Часто задаваемые вопросы
Урок «Масштабное редактирование потоков с sed и tr» бесплатный?
Да — полный текст урока «Масштабное редактирование потоков с sed и tr» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Linux Command Line Mastery, подпишись на CoddyKit PRO. Курс Linux Command Line Mastery содержит 4 уроков всего.
Чему я научусь в уроке «Масштабное редактирование потоков с sed и tr»?
Применяйте преобразования на основе регулярных выражений к потокам с помощью подстановки sed, а также переводите или удаляйте символы с помощью tr. Ты практикуешь Linux Command Line Mastery с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Linux Command Line Mastery?
Предыдущий опыт не требуется. Linux Command Line Mastery на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Масштабное редактирование потоков с sed и tr»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Linux Command Line Mastery?
Да. Каждый урок Linux Command Line Mastery включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Освоение регулярных выражений (Regex)
- Расширенные шаблоны `grep` и `find`
- `xargs` для объединения команд
- Масштабное редактирование потоков с sed и tr