Keresse meg a & Szöveg cseréje több dokumentumban a parancssorból
Ha kényelmesen kezeli a parancssort, és olyan helyzetben van, amikor egy szót, kifejezést, URL-t vagy karaktert kell keresnie és lecserélnie több szöveges dokumentumból álló csoportban, a perl elég jól ellátja a feladatot. Egy egyszerű parancssor nagyon gyorsan végrehajtja a csoportos kötegelt keresést és cserét a szövegen, akár egyetlen dokumentumban, akár több dokumentumból álló csoporton keresztül.
A parancssorban sok mindenhez hasonlóan nincs megerősítési folyamat, ezért a parancs indítása előtt meg kell győződnie arról, hogy a szintaxis helyesen van beállítva, ellenkező esetben előfordulhat, hogy egy másik keresést és cserét kell végrehajtania. hogy kijavítsuk az elírást.
Az alapvető parancs szintaxisa a következő: perl -pi -w -e 's/THIS/THAT/g;' /útvonal/fájlokhoz.txt
Egy egyszavas példához, ha az „ogre” minden előfordulását „cornbread”-re kell cserélni minden .txt fájlban a „Dokumentumok” mappában, akkor a következő parancsot kell használnia:
perl -pi -w -e 's/ogre/cornbread/g;' ~/Dokumentumok/.txt
Egy egy teljes kifejezés megtalálására és cseréjére vonatkozó példa , tegyük fel, hogy a teljes mondatot lecseréljük: „A csokoládégyár ” a „The Wizard of Oz” elemmel a „Films” kezdetű .txt fájlok egy csoportjában, a Dokumentumok könyvtárban tárolva:
perl -pi -w -e 's/The Chocolate Factory/The Wizard of Oz/g;' ~/Dokumentumok/Filmek.txt
A keresés és a csere azonnal megtörténik. A módosítást a cat és a grep használatával ellenőrizheti:
cat ~/Documents/Films124.txt |grep Wizard of Oz"
El kell ismerni, hogy ez meglehetősen fejlett, és igen, a több dokumentumon keresztüli kötegelt keresés és csere felhasználóbarátabb módon elvégezhető a grafikus felhasználói felületeken, például a TextWrangler és a BBEdit segítségével, de néha a parancssor gyorsabb. az ehhez hasonló és más hasonló gyors feladatokhoz, ráadásul a használatához nincs szükség további letöltésekre.
Nagy hüvelykujj a Lifehackernek a kiváló trükkért.
Update: A „sed” parancs egy másik módja a parancssoron keresztüli gyors keresésnek és cserének. A sed leírása többnyire egy másik cikk témája, de a sed használatának alapvető szintaxisa ennél a feladatnál valamivel egyszerűbb, így könnyebben megjegyezhető:
sed -i 's/THIS/THAT/g' /path/to/files.txt
Nincs jó vagy rossz út, így az, hogy perl-t vagy sed-et használsz, személyes preferencia kérdése.