BASH programavimas

Kaip rašyti į failą Bash

Kaip rašyti į failą Bash
Viena iš pagrindinių užduočių, kurias atliekame dirbdami su „bash“ scenarijais, yra failų skaitymas ir rašymas. Šiame vadove mes sutelksime dėmesį į tai, kaip skaityti failus bash ir kaip juos redaguoti.

Yra keli būdai, kaip skaityti ir rašyti failą „bash“. Paprasčiausias būdas yra naudoti operatorius „>“ ir „>>“.

Bendras peradresavimo operatorių naudojimo formatas yra:

Duomenys> Failo pavadinimas
Duomenys >> Failo pavadinimas

Supraskime rašymo faile procedūrą su pavyzdžiu:

Kaip parašyti failą naudojant peradresavimo operatorius

Kaip aptarta aukščiau, paprastas ir paprastas būdas rašyti į failą yra nukreipimo operatorių naudojimas. Pvz., Jei norite pakeisti jau esančio failo tekstą, pirmiausia sukurkite tekstinį failą pavadinimu „testfile.txt“Ir parašykite jame bet ką:

Išsaugokite teksto failą.

Terminale įveskite žemiau nurodytą komandą:

$ echo „Esamo failo teksto perrašymas“> testfile.txt

Per didelis išlenkimas gali būti rizikingas; todėl gera praktika įgalinti „noklobiką“. Nustačius „nokloberis“, bus užblokuotas bet kurio išeinančio failo perrašymas.

$ set -o nokloberis
$ echo „Esamo failo teksto perrašymas“> testfile.txt

Bet jei norite apeiti „noklobiką“, tada naudokite> |Operatorius vietoj „>“:

$ echo „Esamo failo teksto perrašymas“> | testfile.txt

Arba galite tiesiog išjungti „noklobiką“:

$ set + o nokloberis

Bet ši komanda atims visų failų apsaugą.

Pirmiau pateiktas išvestis rodo, kad esamas tekstas buvo perrašytas. Dabar naudokime>>" operatorius:

$ echo „Teksto pridėjimas prie esamo teksto failo“ >> testfile.txt

aidas„Ne visada yra idealu naudoti, nes juo negalima formatuoti teksto, todėl„ aido “vietoje tekstui formatuoti naudokite„ printf “, kaip parodyta šioje komandoje:

$ printf „Sveiki atvykę \ n Tai naujas tekstinis failas.”> Newtestfile.txt

Supraskime sąvoką su „bash“ scenarijaus pavyzdžiu. Atidarykite „Vim“ įvesdami terminale „vim“. Jei įrenginyje neturite „Vim“ redaktoriaus, įdiekite jį naudodami:

$ sudo apt install vim

Įveskite scenarijų:

#! / bin / bash
aidas „Įveskite savo vardą“
skaityti vardą
echo $ name> duomenų_dir.txt
aidas „Įveskite savo amžių“
skaitymo amžius
echo $ age >> duomenų_dir.txt
katės duomenų_dir.txt

katė”Komanda naudojama failams kurti ir redaguoti. Išsaugokite aukščiau pateiktą scenarijų „Vim“, perjungdami režimą paspausdami „EscKlavišą ir įveskite „: w myscript.sh“. Atidarykite terminalą ir paleiskite kodą:

Kaip parašyti failą naudojant „Heredoc“

Jei norite parašyti kelias eilutes, paprasčiausias būdas yra „Heredoc“ naudojimas. Čia dokumentas, dar vadinamas „Heredoc“, yra daugiafunkcinis kodų blokas. Heredoc sintaksė yra tokia:

Komanda <<[-] Delimiter
.
tekstas / komandos
.

Apribotojas

Bet kuri eilutė gali būti naudojama „Atribotuvo“ vietoje, o „-“ taip pat gali būti naudojama norint pašalinti visas skirtuko vietas faile. Supraskime tai naudodami paprastą pavyzdį:

#! / bin / bash
katė << TEXTFILE
Tai yra tekstinis failas.
Šis failas sukurtas naudojant „heredoc“.
TEKSTILĖ

Minėta scenarijaus „cat“ komanda sukuria teksto failą pavadinimu „TEXTFILE“ ir įrašo tekstą į ką tik sukurtą failą. Dabar išsaugokite failą pavadinimu „scenarijus.sh“. Paleiskite terminalą ir paleiskite scenarijų.

Kaip parašyti failą naudojant „Tee“ komandą

Kitas failo rašymo būdas yra komandos „Tee“ naudojimas. Kaip vardas, nurodantis šią komandą, įveda ir rašo į failą ir tuo pačiu metu rodo išvestį. Pagal numatytuosius nustatymus komanda „Tee“ perrašys esamus duomenis.

$ echo „Tai yra tekstas“ | tee teksto failas.txt

Norėdami pridėti naudokite -a:

$ echo „Tai dar vienas tekstas“ | tee -a teksto failas.txt

Norėdami parašyti kelias eilutes, naudokite:

$ echo „Teksto pridėjimas prie kelių failų“ | tee tekstas failas.txt textfile2.txt textfile3.txt

Pirmiau nurodyta komanda sukurs tris failus, jei jų nėra, ir parašys tekstą kiekvienam iš jų.

Išvada

Šiame vadove daugiausia dėmesio skiriama keliems būdams rašyti į failą „bash“ su pavyzdžiais. „Bash“ scenarijuose yra keli būdai, kaip parašyti failą, tačiau paprasčiausias yra peradresavimo operatorių „>“, „>>“ naudojimas. Norėdami rašyti kelias eilutes, galima naudoti „heredoc“, o jei norite tuos pačius duomenis rašyti keliose eilutėse, komanda „tee“ yra gana patogu.

Naudingi įrankiai „Linux“ žaidėjams
Jei jums patinka žaisti žaidimus „Linux“ sistemoje, yra tikimybė, kad galbūt naudojote tokias programas ir įrankius kaip „Wine“, „Lutris“ ir „OBS Stud...
„HD Remastered“ žaidimai, skirti „Linux“, kurie niekada anksčiau nebuvo išleisti „Linux“
Daugelis žaidimų kūrėjų ir leidėjų siūlo senų žaidimų HD remasterį, kad prailgintų franšizės laiką. Prašome gerbėjų, prašančių suderinamumo su šiuolai...
Kaip naudoti „AutoKey“, norint automatizuoti „Linux“ žaidimus
„AutoKey“ yra darbalaukio automatizavimo įrankis, skirtas „Linux“ ir „X11“, užprogramuotas „Python 3“, „GTK“ ir „Qt“. Naudodami scenarijų ir „MACRO“ f...