сед

Како заменити све након узорка помоћу команде 'сед'

Како заменити све након узорка помоћу команде 'сед'

Задаци замене могу се обављати у Линуку на различите начине. Команда 'сед' је један од начина за извршавање заменског задатка. Ова наредба се може користити за замену текста у низу или датотеци помоћу другог узорка. Како можете заменити све након подударања обрасца помоћу команде 'сед' приказано је у овом упутству.

Замените све након меча у низ:

Како се део низа може заменити на основу одговарајућег узорка и $ ПАРТИТИОН_ЦОЛУМН приказано је у овом одељку овог водича. Али ова променљива функционише ако се образац подудара са било којом речју на почетку или средини низа. Неће заменити текст ако се образац подудара са последњом речју низа.

Пример-1: Замените све после меча помоћу $ ПАРТИТИОН_ЦОЛУМН

Следећа команда претражиће знак „а“, а преостали део после „а“ биће замењен текстом „популарна веб локација“. $ ПАРТИТИОН_ЦОЛУМН.* користи се за дефинисање преосталог дела након знака, 'а'.

$ ецхо "ЛинукХинт је веб локација" | сед "с / а $ ПАРТИТИОН_ЦОЛУМН.* / популарна веб локација блога / "

Следећи излаз ће се појавити након покретања наредбе. Овде је „веб локација“ замењена са „популарна блог локација“.


Следећи образац ће претражити реч 'веб'У низу и замените преостали део са'веб'По тексту,'популарна блог локација'ако подударање постоји и'веб'Није део последње речи низа.

$ ецхо "ЛинукХинт је веб локација" | сед "с / веб.* $ ПАРТИТИОН_ЦОЛУМН.* / популарна веб локација блога / "

Следећи излаз ће се појавити након покретања наредбе. Овде је „веб локација“ последња реч низа и из овог разлога није извршена замена.

Пример-2: Замените све после меча помоћу шаблона

Следећа команда ће претражити реч 'басх'глобално у низу и замените све речју ако реч постоји у низу. 'г'Овде се користи за глобалну претрагу.

$ ецхо "Волим басх програмирање" | сед "с / басх.* / питхон скрипта / г "

Следећи излаз ће се појавити након покретања наредбе. Овде 'басх' постоји у средини низа и замена је извршена.

Замените све после меча у датотеку:

Сав садржај одређене линије или више редова или преостали редови датотеке након подударања могу се заменити помоћу 'сед'команда. Направите текстуалну датотеку са именом похађање.ткт са следећим садржајем за тестирање примера приказаних у овом одељку.

похађање.ткт

1108885 је присутан
1999979 је присутан
1769994 је одсутан
1105656 је одсутан
1455999 је одсутан

Пример -3: Замените сав садржај из реда датотеке после подударања

Следећа команда „сед“ претражиће број 1769994 у датотеци, а све са бројем биће замењено текстом „1586844 присутан“ ако број постоји у било ком реду датотеке.

$ мачка приврженост.ткт
$ сед "с / 1769994.* / 1586844 је присутан / „присуство.ткт

Појавиће се следећи излаз са извршавањем наредби. Овде број за претраживање постоји у трећем реду датотеке и замена је обављена.

Пример -4: Замените сав садржај из више редова датотеке након подударања

Следећа команда 'сед' приказује употребу променљиве $ ПАРТИТИОН_ЦОЛУМН за замену више редова из датотеке. Команда ће претражити '110' на почетку сваког ретка датотеке и све заменити са '110' текстом 'Инвалид Ентри' где ће се наћи одговарајући текст.

$ присуство мачака.ткт
$ сед "с / ^ 110.* $ ПАРТИТИОН_ЦОЛУМН.* / Неважећи унос / „присуство.ткт

Следећи излаз ће се појавити након покретања наредби. '110' постоји у два реда датотеке, а они су замењени текстом који замењује.

Пример-5: Замените сав садржај из реда датотеке помоћу 'ц' након подударања

Следеће 'сед'наредба показује употребу'ц'да замени све после меча. Ево, 'ц'указује на промену. Команда ће претражити реч 'поклон'у датотеци и замени све редове текстом,'Ова линија је замењена'ако реч постоји у било ком реду датотеке.

$ присуство мачака.ткт
$ сед '/ пресент / ц Овај ред је замењен са' присуство.ткт

Следећи излаз ће се појавити након покретања наредби. Реч „присутан“ постоји у прва два реда датотеке, а ова два реда замењена су текстом који замењује.

Пример 6: Замените сав садржај из реда датотеке на основу почетног и завршног обрасца

Понекад је потребно заменити текст на основу почетног и завршног обрасца. Следећа команда 'сед' показује начин дефинисања почетног и завршног обрасца за замену редова из датотеке. Команда ће претражити оне редове у датотеци који почињу бројем 110 и завршавају се речју "одсутан" и заменити све речју "замењено" тамо где се обрасци подударају.

$ присуство мачака.ткт
$ сед -е / ^ 110.* одсуство $ / замењено / г 'присуство.ткт

Следећи излаз ће се појавити након покретања наредби. Овде први и четврти ред почињу бројем 110, али реч 'одсутан' постоји само у четвртом реду. Дакле, четврти ред датотеке је замењен текстом који замењује.

Закључак:

Команда 'сед' је врло моћан алат Линука за извршавање различитих врста задатака везаних за обраду текста. Задатак замене заснован на обрасцу подударања размотрен је у овом упутству коришћењем различитих врста образаца у наредби 'сед'. $ ПАРТИТИОН_ЦОЛУМН, 'ц' и '.* 'користи се у овом упутству да замени све редове датотеке где постоји одговарајући образац. Овде су приказане употребе неких знакова дефинисања образаца, као што су '^' и '$'. Постоје многи други знакови који дефинишу образац у регуларном изразу у сврхе претраживања. Надам се да ће овај водич помоћи читаоцу да сазна основе замене свега из датотеке након меча.

Најбоље игре за ручно праћење
Оцулус Куест је недавно представио сјајну идеју ручног праћења без контролера. Са све већим бројем игара и активности које извршавају подршку формално...
Како приказати ОСД прекривач у целом екрану Линук апликација и игара
Играње игара преко целог екрана или коришћење апликација у режиму целог екрана без ометања може вам одсећи релевантне системске информације видљиве на...
Топ 5 карата за хватање игара
Сви смо видели и волели стримовање играња на ИоуТубе-у. ПевДиеПие, Јакесептицие и Маркиплиер само су неки од најбољих играча који су зарадили милионе ...