Въведение в командата Linux sed
Операционната система Linux използва терминални команди, за да работи с файловата система на компютъра. Основното използване на Linux командата sed , което е кратко за редактора на потоци, е да променяте всеки ред на файл или поток, като замените определени части от линията. Той прави основни текстови промени във файл или вход от тръбопровод. Например, кажете, че имате файл с име "songs.text", който съдържа следните редове:
1, Джъстин Тимбърлейк, Дял 545, Цена $ 6.30 2, Тейлър Суифт, Заглавие 723, Цена $ 7.90 3, Мик Джагър, Заглавие 610, Цена $ 7.90 4, Лейди Гага, Заглавие 118, Цена $ 6.30 5, Johnny Cash, Дял 482, Цена $ 6.50 6, Елвис Пресли, Заглавие 335, Цена $ 6.30 7, Джон Ленън, Дял 271, Цена $ 7.90Осъществяване на заместване на текст с Sed
Ако искате да промените всички ценови прояви от $ 6.30 до $ 7.30, можете да направите промените, като използвате командата sed по следния начин:
седем / 6.30 / 7.30 / 'songs.txt> songs2.txtТози код прави промяната и записва модифицирания файл в "songs2.txt". Изходният файл съдържа:
1, Джъстин Тимбърлейк, Дял 545, Цена $ 7.30 2, Тейлър Суифт, Заглавие 723, Цена $ 7.90 3, Мик Джагър, Заглавие 610, Цена $ 7.90 4, Лейди Гага, Заглавие 118, Цена $ 7.30 5, Johnny Cash, Дял 482, Цена $ 6.50 6, Елвис Пресли, Заглавие 335, Цена 7,30 лв. 7, Джон Ленън, Заглавие 271, Цена $ 7,90Ако искате да замените всички случаи на "Cash" с "Trash", използвайте:
Съд / Cash / Trash / 'songs.txt> songs2.txtкойто създава файл със съдържание:
1, Джъстин Тимбърлейк, Заглавие 545, Цена $ 7: 30 2, Тейлър Суифт, Заглавие 723, Цена $ 7.90 3, Мик Джагър, Заглавие 610, Цена $ 7.90 4, Lady Gaga, Заглавие 118, Цена $ 7: 30 5, Johnny Trash, Title 482, Цена $ 6.50 6, Елвис Пресли, Заглавие 335, Цена $ 7: 30 7, Джон Ленън, Заглавие 271, Цена $ 7.90Филтриране с командата Sed
Sed също често се използва за филтриране на линии във файл или поток. Например, ако искате да видите само линиите, съдържащи "Джон", вие използвате:
sed -n '/ John / p' songs.txt> johns.txtкойто пише следните редове в файл johns.txt:
5, Johnny Trash, Дял 482, Цена $ 6.50 7, Джон Ленън, Дял 271, Цена $ 7.90