Bash:
Видалення символів за візерунком
How to: (Як це зробити:)
# Видалення всіх цифр з текстового рядка
echo "abc123def456" | tr -d '0-9'
# Вивід: abcdef
# Видалення конкретних символів
echo "hello, world!" | tr -d '!,'
# Вивід: hello world
# Видалення символів, що відповідають візерунку (приклад regex)
echo "foo123bar456" | sed 's/[0-9]//g'
# Вивід: foobarDeep Dive (Поглиблений розбір):
Коли мова заходить про Bash, історія йде глибоко в Unix, де текстова обробка завжди була ключовою. Команди tr та sed - класичні утиліти Unix, використовуються для обробки тексту з 70-х років. tr (translate або transmute) змінює або видаляє символи, sed (stream editor) - більш потужний і може використовувати регулярні вирази.
Поряд з ними, є сучасні інструменти, такі як awk, який також може обробляти тексти за складнішими правилами. Хоча tr є простішим, sed та awk пропонують велику гнучкість.
Що до видалення символів, така потреба часто виникає під час скриптинга, наприклад, коли потрібно обробити результати команд або виводу з програм.