Напомена: Користићемо Линук Минт 20 за демонстрацију коришћења наредбе сед за замену низа у датотеци. Такође можете да користите било који други укус Линука ако желите.
Употреба сед Цомманд:
Сада ћемо вам показати неколико врло занимљивих примера за приказ употребе команде сед у Линуку. Погледајмо како ова наредба ради у различитим сценаријима.
Креирање текстуалне датотеке за демонстрацију:
Да бисмо демонстрирали употребу наредбе сед, желели бисмо да радимо са текстуалном датотеком. Међутим, можете чак створити Басх датотеку или било коју другу датотеку по вашем избору. Друго, датотеку ћемо створити у директоријуму Почетна, тако да нећемо морати да наводимо сложене путање док приступамо овој датотеци. За стварање текстуалне датотеке треба извршити следеће кораке:
Кликните на икону Филе Манагер која се налази на траци задатака Линук Минт 20:
Сада креирајте нову текстуалну датотеку у директоријуму Хоме тако што ћете десним тастером миша кликнути било где тамо, а затим изабрати опцију Нев Доцумент из каскадног менија и опцију Емпти доцумент из подкаскадног менија. Када се креира текстуална датотека, дајте јој одговарајуће име. У овом конкретном примеру назвао сам га сед.ткт.
Двапут кликните на ову датотеку да бисте је отворили и у њу укуцајте било који случајни текст као што је приказано на доњој слици. Спремите ову текстуалну датотеку притиском на Цтрл + С, а затим је затворите.
Сада покрените терминал у Линук Минт 20 као што је приказано на следећој слици:
Након покретања терминала у Линук Минт 20, можете један по један проћи кроз све примере наведене у наставку.
Коришћење команде сед за замену свих појава дате речи:
Команду сед можете користити за замену свих појава дате речи у текстуалној датотеци. Синтакса постизања овог циља наведена је у наставку:
$ сед 'с / сед / ФиндВорд / РеплацеВорд /' датотека.тктОвде треба да замените ФиндВорд речју коју желите да замените, а РевордВорд замените речју коју треба заменити. Штавише, такође морате да замените „датотеку“ именом датотеке у којој желите да извршите ове замене. У овом сценарију, заменио сам ФиндВорд са сед, а РеплацеВорд заменом. Име наше датотеке је било сед.ткт. Такође је приказано на следећој слици:
Успешно извршавање ове команде приказаће вам промене које су се догодиле због покретања ове команде на вашем терминалу:
Коришћење команде сед за замену н-тог појављивања дате речи у сваком реду:
Горњи сценарио био је најједноставнији сценарио замене, међутим с времена на време не желите да замените све појаве речи, већ желите да замените само прво, друго или н-то појављивање те речи у свим редовима. Да бисте то урадили, можете извршити следећу наредбу:
$ сед '/ ФиндВорд / РеплацеВорд / нум' датотека.тктОвде морате да замените ФиндВорд речју коју желите да замените, а РевордВорд замените речју коју треба заменити. Штавише, такође морате да замените „датотеку“ именом датотеке у којој желите да извршите ове замене. У овом сценарију, заменио сам ФиндВорд реплаце и РеплацеВорд седом. Име наше датотеке је било сед.ткт. Такође, нум се односи на појаву или положај речи коју треба заменити. У демонстрираном примеру желим да заменим прву појаву реплаце са сед у свакој линији као што је приказано на доњој слици:
Успешно извршавање ове команде приказаће вам промене које су се догодиле због покретања ове команде на вашем терминалу:
Коришћење команде сед за замену дате речи у одређеном реду:
Понекад дату реч желите заменити само у одређеном реду, а не у целом документу. Да бисте то урадили, изричито морате навести тај одређени број линије у следећој наредби:
$ сед датотека 'ЛинеНум с / ФиндВорд / РеплацеВорд /'.тктОвде треба да замените ФиндВорд речју коју желите да замените, а РевордВорд замените речју коју треба заменити. Штавише, такође морате да замените „датотеку“ именом датотеке у којој желите да извршите ове замене. У овом сценарију заменио сам ФиндВорд сед и РеплацеВорд заменом. Име наше датотеке је било сед.ткт. Такође, потребно је да ЛинеНум замените бројем реда одређене линије у којој желите да извршите замену. У овом примеру смо желели да заменимо сед са заменом у реду број 2 наше датотеке, као што је приказано на следећој слици:
Успешно извршавање ове наредбе показаће вам промене које су се догодиле због покретања ове наредбе на вашем терминалу. Можете лако да потврдите да су се поменуте промене догодиле само у реду број 2 наше датотеке, а не у целом тексту.
Закључак:
Кад год осетите потребу да замените било коју реч у датотеци, прво што требате је да идентификујете свој специфични захтев и.е. да ли желите заменити ту одређену реч у целој датотеци, или желите заменити одређену појаву те одређене речи, или желите заменити ту реч у одређеном реду. Једном када идентификујете свој одређени сценарио, тада можете користити тај одређени метод из примера који су разматрани у овом чланку.