замени текстуални низ у датотеци [Guide]

Ручно уређивање текстуалних датотека на Линук-у може бити заморно. Зато је добро знати како брзо заменити текстуалне низове у датотекама користећи командну линију. Ако сте нови у Линук-у и не знате како то да урадите, можемо вам помоћи! Пратите док вам показујемо како да замените текстуални низ у датотеци на Линук-у!

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

Алат сед је најбољи начин да замените текстуални низ у датотеци на Линук-у. Разлог? Једноставан је за употребу и веома добро ради свој посао. Сед је обично унапред инсталиран на 99% Линук оперативних система, тако да нема потребе да га инсталирате да бисте га користили.

Замена текстуалног низа у датотеци са Сед се врши командом сед -и. Ево како да га користите. Прво отворите прозор терминала на Линук радној површини. Можете да отворите прозор терминала притиском на Цтрл + Алт + Т на тастатури.

Када је прозор терминала отворен и спреман за употребу, напишите сед -и у промпт терминала. Ово је почетак команде замене.

sed -i

Након што напишете команду сед -и, додајте знак наводника. Овај наводник је неопходан, јер сав текст који се замењује са сед -и мора да почне после овог знака.

sed -i '

Након прве ознаке ‘, упишите с/. С/ иде директно испред постојећег текста који желите да замените користећи сед.

sed -i 's/

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

sed -i 's/apple

Када се у команду упише текст који желимо да заменимо, следећи корак је уписивање новог текста који ће га заменити. У овом примеру заменићемо „јабуке“ са „наранџе“.

sed -i 's/apples/oranges

Када је текст који желимо да заменимо уписан у команду (наранџе), затворите команду са г/. Г/ каже сед-у да замени све инстанце текста (јабуке) новим текстом (наранџе). Требало би да изгледа као пример испод.

  Како угостити Минецрафт сервер на Линуку

Напомена: ако не желите да замените сваки текст у датотеци (јабуке на поморанџе, на пример), уклоните г и нека се уместо тога покрене као сед -и ‘с/апплес/орангес/’.

sed -i 's/apple/orange/g'

На крају, реците седу у којој се датотеци налази текст који треба заменити. У овом примеру циљ је фруит.ткт у матичном директоријуму.

sed -i 's/apples/oranges/g' ~/fruit.txt

Притисните тастер ентер да извршите команду и замените текстуални низ у датотеци.

Замени текстуални низ у датотеци – Перл

Други начин да се замени текстуални низ у датотеци на Линук-у је програмски језик Перл. Перл се доста користи за обраду текста, тако да природно може заменити текстуалне низове у датотекама и савршен је за овај случај употребе.

За почетак, уверите се да имате Перл инсталиран на вашем Линук рачунару. Већина Линук оперативних система долази са инсталираним Перл-ом. Међутим, ако га немате, погледајте страницу помоћи вашег оперативног система за информације о томе како да натерате да ради.

Коришћење Перл-а за замену текстуалних стрингова у датотеци захтева терминал. Отворите терминал на Линук радној површини притиском на Цтрл + Алт + Т на тастатури. Или потражите „Терминал“ у менију апликације и покрените га на тај начин.

Када је прозор терминала отворен и спреман за употребу, почните тако што ћете откуцати перл -пе у промпт командне линије. Перл -пе команда је оно што је потребно да се замени текстуални низ у датотеци.

perl -pe

Након што упишете перл -пе у промпт терминала, мораћете да почнете са првим наводником. Ова ознака говори Перлу где је област за замену текста у команди.

perl -pe '

Након првог знака наводника, додајте с/, затим низ текста који желите да замените и још један /. На пример, да бисте заменили „јабуке“ у датотеци фруит.ткт, написали бисте следећи текст.

perl -pe 's/apples/

Након што напишете реч(е) коју желите да замените, додајте реч која ће заменити постојећи текст. На пример, ако желите да замените „јабуке“ у „фруит.ткт“ са „наранџе“, додајте „наранџе“ после перл -пе ‘с/апплес/ тако да изгледа као перл -пе ‘с/апплес/орангес/ .

perl -pe 's/apples/oranges/

Када су оба низа текста у команди, мораћете да наведете улазну датотеку коју Перл користи. На пример, ако желите да замените текст у датотеци „фруит.ткт“, мораћете да га наведете у команди.

  Шта ово значи за претплатнике

Напомена: у овом примеру, датотека „фруит.ткт“ је у матичном директоријуму (~/). Обавезно замените „~/фруит.ткт“ локацијом текстуалне датотеке да би команда функционисала.

perl -pe 's/apples/oranges/' ~/fruit.txt

Сада када је улазна датотека (датотека коју мењате помоћу Перла) додата команди, команда би требало да изгледа као у наставку.

perl -pe 's/apples/oranges/' ~/fruit.txt > /tmp/output.txt;cat /tmp/output.txt > ~/fruit.txt

Када се покрене горња команда, текстуални низ ће бити замењен новим текстом који сте навели. У нашем примеру, заменили смо „јабуке“ са „наранџе“. Да бисте видели промене, унесите наредбу испод.

cat fruit.txt