сед

сед команда за замену низа у датотеци

сед команда за замену низа у датотеци
Кад год радимо са било којом врстом датотека, врло је уобичајена пракса да те датотеке извршавамо проналажењем и заменом речи. Већина уређивача текста пружа различите методе засноване на ГУИ за извођење ових модификација. Међутим, понекад вам је потребан начин да путем терминала пронађете и замените речи у датотеци. Стога ћемо вас у овом чланку провести кроз метод коришћења наредбе сед да бисте заменили низ у текстуалној датотеци. Такође ћемо осветлити различите сценарије у којима се ова наредба може користити.

Напомена: Користићемо Линук Минт 20 за демонстрацију коришћења наредбе сед за замену низа у датотеци. Такође можете да користите било који други укус Линука ако желите.

Употреба сед Цомманд:

Сада ћемо вам показати неколико врло занимљивих примера за приказ употребе команде сед у Линуку. Погледајмо како ова наредба ради у различитим сценаријима.

Креирање текстуалне датотеке за демонстрацију:

Да бисмо демонстрирали употребу наредбе сед, желели бисмо да радимо са текстуалном датотеком. Међутим, можете чак створити Басх датотеку или било коју другу датотеку по вашем избору. Друго, датотеку ћемо створити у директоријуму Почетна, тако да нећемо морати да наводимо сложене путање док приступамо овој датотеци. За стварање текстуалне датотеке треба извршити следеће кораке:

Кликните на икону Филе Манагер која се налази на траци задатака Линук Минт 20:

Сада креирајте нову текстуалну датотеку у директоријуму Хоме тако што ћете десним тастером миша кликнути било где тамо, а затим изабрати опцију Нев Доцумент из каскадног менија и опцију Емпти доцумент из подкаскадног менија. Када се креира текстуална датотека, дајте јој одговарајуће име. У овом конкретном примеру назвао сам га сед.ткт.

Двапут кликните на ову датотеку да бисте је отворили и у њу укуцајте било који случајни текст као што је приказано на доњој слици. Спремите ову текстуалну датотеку притиском на Цтрл + С, а затим је затворите.

Сада покрените терминал у Линук Минт 20 као што је приказано на следећој слици:

Након покретања терминала у Линук Минт 20, можете један по један проћи кроз све примере наведене у наставку.

Коришћење команде сед за замену свих појава дате речи:

Команду сед можете користити за замену свих појава дате речи у текстуалној датотеци. Синтакса постизања овог циља наведена је у наставку:

$ сед 'с / сед / ФиндВорд / РеплацеВорд /' датотека.ткт

Овде треба да замените ФиндВорд речју коју желите да замените, а РевордВорд замените речју коју треба заменити. Штавише, такође морате да замените „датотеку“ именом датотеке у којој желите да извршите ове замене. У овом сценарију, заменио сам ФиндВорд са сед, а РеплацеВорд заменом. Име наше датотеке је било сед.ткт. Такође је приказано на следећој слици:

Успешно извршавање ове команде приказаће вам промене које су се догодиле због покретања ове команде на вашем терминалу:

Коришћење команде сед за замену н-тог појављивања дате речи у сваком реду:

Горњи сценарио био је најједноставнији сценарио замене, међутим с времена на време не желите да замените све појаве речи, већ желите да замените само прво, друго или н-то појављивање те речи у свим редовима. Да бисте то урадили, можете извршити следећу наредбу:

$ сед '/ ФиндВорд / РеплацеВорд / нум' датотека.ткт

Овде морате да замените ФиндВорд речју коју желите да замените, а РевордВорд замените речју коју треба заменити. Штавише, такође морате да замените „датотеку“ именом датотеке у којој желите да извршите ове замене. У овом сценарију, заменио сам ФиндВорд реплаце и РеплацеВорд седом. Име наше датотеке је било сед.ткт. Такође, нум се односи на појаву или положај речи коју треба заменити. У демонстрираном примеру желим да заменим прву појаву реплаце са сед у свакој линији као што је приказано на доњој слици:

Успешно извршавање ове команде приказаће вам промене које су се догодиле због покретања ове команде на вашем терминалу:

Коришћење команде сед за замену дате речи у одређеном реду:

Понекад дату реч желите заменити само у одређеном реду, а не у целом документу. Да бисте то урадили, изричито морате навести тај одређени број линије у следећој наредби:

$ сед датотека 'ЛинеНум с / ФиндВорд / РеплацеВорд /'.ткт

Овде треба да замените ФиндВорд речју коју желите да замените, а РевордВорд замените речју коју треба заменити. Штавише, такође морате да замените „датотеку“ именом датотеке у којој желите да извршите ове замене. У овом сценарију заменио сам ФиндВорд сед и РеплацеВорд заменом. Име наше датотеке је било сед.ткт. Такође, потребно је да ЛинеНум замените бројем реда одређене линије у којој желите да извршите замену. У овом примеру смо желели да заменимо сед са заменом у реду број 2 наше датотеке, као што је приказано на следећој слици:

Успешно извршавање ове наредбе показаће вам промене које су се догодиле због покретања ове наредбе на вашем терминалу. Можете лако да потврдите да су се поменуте промене догодиле само у реду број 2 наше датотеке, а не у целом тексту.

Закључак:

Кад год осетите потребу да замените било коју реч у датотеци, прво што требате је да идентификујете свој специфични захтев и.е. да ли желите заменити ту одређену реч у целој датотеци, или желите заменити одређену појаву те одређене речи, или желите заменити ту реч у одређеном реду. Једном када идентификујете свој одређени сценарио, тада можете користити тај одређени метод из примера који су разматрани у овом чланку.

Водич за ОпенТТД
ОпенТТД је једна од најпопуларнијих игара за пословну симулацију. У овој игри морате створити диван посао превоза. Међутим, почет ћете у почетку око 1...
СуперТукКарт за Линук
СуперТукКарт је сјајан наслов дизајниран да вам пружи Марио Карт искуство бесплатно на вашем Линук систему. Прилично је изазовно и забавно играти, диз...
Водич за битку за Веснотх
Битка за Веснотх је једна од најпопуларнијих стратешких игара отвореног кода које тренутно можете играти. Не само да је ова игра у развоју већ јако ду...