Bash:
Виділення підрядків
Як це зробити:
В Bash можна використовувати різні методи для витягу підрядків. Ось кілька прикладів:
# Визначення рядка
text="Привіт, світе!"
# Використання синтаксису маніпуляції рядками (позиційний зріз)
echo ${text:0:6} # Виведе 'Привіт'
# Використання `cut` команди
echo $text | cut -d ',' -f 1 # Виведе 'Привіт'
# Використання Regular Expressions з `grep` командою
echo $text | grep -oP '.*?(?=,)' # Виведе 'Привіт'
Поглиблений огляд:
Витягування підрядків існувало в Unix із появою утиліт обробки текстів, таких як awk
, sed
, і cut
. Проте, Bash додав більше можливостей з версій 2.0, яка випущена у 1996 році. З того часу, робота з рядками стала гнучкішою.
Є багато способів виконання одного завдання: при наявності великих шматків тексту, програми типу awk
або grep
зазвичай швидші, але Bash може бути зручнішим для простих задач і дрібних скриптів. cut
добре підходить для роботи з текстом у форматі CSV або коли є чіткий роздільник.
Роблячи вибір між методами, важливо зважати на читабельність, швидкість, і портабельність коду. Bash вбудовані властивості {}
зазвичай є безпечним вибором для простого витягування підрядків, оскільки це не вимагає зовнішніх утиліт і працює в усіх скриптах Bash.
Ознайомтеся також:
- Абрамс, Мендель. Робота з рядками в Bash. Advanced Bash-Scripting Guide
- Кроен, Роберт. Linux командний інтерфейс. The Linux Command Line
- Ньюхем, Кемерон. sed і awk. sed & awk