BASH programozás

Hogyan írjunk fájlba a Bash-ban

Hogyan írjunk fájlba a Bash-ban
Az egyik alapvető feladat, amelyet a bash szkriptek használata közben végzünk, a fájlok olvasása és írása. Ebben az útmutatóban arra fogunk összpontosítani, hogy miként olvassuk el a bash fájlokat és hogyan szerkesszük azokat.

A fájl bash-ban történő olvasásának és írásának többféle módja van. A legegyszerűbb módszer a „>” és a „>>” operátorok használata.

Az átirányítási operátorok használatának általános formátuma:

Adatok> Fájlnév
Adatok >> Fájlnév

Értsük meg a fájlba írási eljárást egy példával:

Fájl írása átirányítási operátorokkal

Amint fentebb említettük, a fájlba történő írás egyszerű és egyértelmű megközelítése az átirányítási operátorokat használja. Például, ha meg akarja változtatni egy már létező fájl szövegét, akkor először hozzon létre egy szöveges fájlt a következő névvel:tesztfájl.txt”, És írjon bele bármit:

Mentse a szöveges fájlt.

Írja be az alább említett parancsot a terminálba:

$ echo “A fájl meglévő szövegének felülírása”> tesztfájl.txt

A tönkremenés kockázatos lehet; ezért jó gyakorlat a „noclobber” engedélyezése. A „noclobber” beállítása letiltja a kilépõ fájlok felülírását.

$ set -o noclobber
$ echo “A fájl meglévő szövegének felülírása”> tesztfájl.txt

De ha meg akarja kerülni a „noclobber” -t, akkor használja a> |”Operátor>”:

$ echo “A fájl meglévő szövegének felülírása”> | tesztfájl.txt

Vagy egyszerűen letilthatja a „noclobber” -t:

$ set + o noclobber

De ez a parancs elveszíti az összes fájl védelmét.

A fenti kimenet azt jelzi, hogy a meglévő szöveget felülírták. Most használjuk a>>" operátor:

$ echo „Szöveg hozzáfűzése a meglévő szövegfájlhoz” >> tesztfájl.txt

visszhangA ”nem mindig ideális a használatra, mivel a szöveget nem lehet vele formázni, ezért az„ echo ”helyett használja a„ printf ”szót a szöveg formázásához, amint azt a következő parancs bemutatja:

$ printf “Welcome \ n Ez egy új szöveges fájl.”> Newtestfile.txt

Értsük meg a koncepciót egy bash script példával. Nyissa meg a Vim-et úgy, hogy beírja a terminálba a „vim” szót. Ha nincs Vim szerkesztő az eszközén, akkor telepítse a következővel:

$ sudo apt install vim

Írja be a szkriptet:

#! / bin / bash
visszhang „Írja be a nevét”
olvassa el a nevet
echo $ name> data_dir.txt
visszhang „Írja be az életkorát”
olvasás kora
echo $ age >> data_dir.txt
cat data_dir.txt

A "macska”Paranccsal lehet létrehozni és szerkeszteni a fájlokat. Mentse a fenti szkriptet a Vimbe módváltással, miután megnyomta a “Kilépés”Gombot, majd írja be a következőt:: w myscript.SH”. Nyissa meg a terminált és futtassa a kódot:

Hogyan írhatunk fájlt a Heredoc segítségével

Ha több sort akar írni, akkor a legegyszerűbb módszer a „Heredoc” használata. Itt a „Heredoc” néven is ismert dokumentum egy többcélú kódblokk. A Heredoc szintaxisa:

Parancs <<[-] Delimiter
.
szöveg / parancsok
.

Határoló

Bármely karakterlánc használható a „Elhatároló” helyén, és a „-” a tabulátorok eltávolítására is használható a fájlban. Értsük meg egy egyszerű példa segítségével:

#! / bin / bash
macska << TEXTFILE
Ez egy szöveges fájl.
Ez a fájl a heredoc segítségével készült.
SZÖVEGES FÁJL

A fenti szkript „cat” parancs létrehoz egy szöveges fájlt a „TEXTFILE” néven, és szöveget ír a most létrehozott fájlba. Most mentse a fájlt a következő névre:myscript.SH”. Indítsa el a terminált és futtassa a szkriptet.

Fájl írása a Tee paranccsal

Egy másik módszer a fájlíráshoz a „Tee” parancs használata. A név, amely jelzi ezt a parancsot, bevitelt és egy fájlt ír, és a kimenetet egyszerre mutatja. Alapértelmezés szerint a „Tee” parancs felülírja a meglévő adatokat.

$ echo „Ez néhány szöveg” | tee textfile.txt

Az -a használatához csatolja:

$ echo „Ez egy másik szöveg” | tee -a szövegfájl.txt

Több sor írásához használja:

$ echo „Szöveg hozzáadása több fájlhoz” | tee textfile1.txt textfile2.txt textfile3.txt

A fenti parancs három fájlt hoz létre, ha nem léteznek, és mindegyikhez szöveget ír.

Következtetés

Ez az útmutató több megközelítésre összpontosít, hogy egy bash fájlba írjon példákkal. A bash szkriptekben többféleképpen írhatunk egy fájlt, de a legegyszerűbb az átirányítási operátorok használata: „>”, „>>”. Több sor írására a „heredoc” szó használható, és ha ugyanazokat az adatokat több sorba szeretné írni, akkor a „tee” parancs nagyon hasznos.

A legjobb parancssori játékok Linuxhoz
A parancssor nem csak a legnagyobb szövetséges a Linux használatakor, hanem a szórakozás forrása is lehet, mert sok olyan szórakoztató játék lejátszás...
A legjobb Gamepad Mapping alkalmazások Linuxhoz
Ha egy tipikus billentyűzet és egér beviteli rendszer helyett szeretnél játékokat játszani Linuxon egy játékvezérlővel, van néhány hasznos alkalmazás ...
Hasznos eszközök Linux játékosok számára
Ha szeretsz Linuxon játszani, akkor valószínű, hogy olyan alkalmazásokat és segédprogramokat használtál, mint a Wine, a Lutris és az OBS Studio a játé...