Neke osnovne korisne naredbe
Već smo vam dali osnovnu podjelu skripti ljuske i shemu obrasca za petlje, ali svakako provjerite te članke ako ste propustili naš vodič za skriptiranje ljuske do sada.
Komandna linija je izuzetno čudna zbog mnogih razloga, a preusmjeravanje je jedan od najistaknutijih. Ako ste morali zabilježiti i reproducirati izlaz svake naredbe kako bi poduzeli daljnje akcije ili upotrijebili to za nešto drugo, onda bismo svi davno bili poludjeli. Preusmjeravanje nam omogućuje da upotrijebimo taj izlaz i spremimo ga ili ga odmah upotrijebimo kao ulaz za drugu naredbu. Također možemo koristiti datoteke kao ulaze za druge naredbe.
Prije nego što krenemo dalje, pokrijmo neke osnovne naredbe koje mogu biti korisne na mnogim mjestima.
jeka - Ova naredba jednostavno ispisuje (prikazuje) cjelinu svog argumenta na naredbenoj liniji kao izlaz
echo argument with spaces
mačka - Ova naredba prikazuje sadržaj tekstualnih datoteka kao izlaz.
cat file_to_be_read
Recimo da stvaramo tu tekstnu datoteku u nano:
grep pattern file
Preusmjeravanje izlaza
Za preusmjeravanje izlaza naredbe u datoteku upotrijebimo posebni znak, veći od simbol (>).
Promijenimo naš popis, zar ne? Unesite sljedeću naredbu:
echo pepperoni > list
Također imajte na umu da su prethodni sadržaji "popisa" uklonjeni. Pokušaj ponovno:
echo yellow peppers >> list
Uzmimo izlaz naredbe i stavimo ga u datoteku:
ls –al / > ~/rootlist
Cijevi ili lanac
Cjevovod je tako nazvan jer upotrebljava cijev, (|; dijeli se s ključom na većini tipkovnica). U osnovi, potrebno je izlaz jedne naredbe i izravno ga hrani drugom. Možete stvoriti dugačke lance naredbi kako biste dobili vrlo specifičan željeni izlaz na ovaj način, a vrlo je pogodan za naredbe poput grepa.
Kao što možete vidjeti, grep razlikuje velika i mala slova. Možete upotrijebiti "-i" zastavicu kako biste ga zanemarili.
Preusmjeravanje ulaza
Također možete preuzeti ulaze iz datoteka za naredbe pomoću znaka manjeg od simbola (<).
cat < list
Recimo da želimo filtrirati bilo koju riječ koja je "pep" u njemu iz naše trenutne "popisa" datoteke u novu datoteku pod nazivom "revizije".
grep pep < list > revisions
grep pep < list | sort > revisions
Da bismo ilustrirali naredbu sortiranja, pogledajmo sljedeći primjer:
Jednostavna skripta
Izradimo skriptu koja ima sljedeći obrazac:
script searchterm listfile
To će potrajati pojam i koristiti grep za traženje kroz popis datoteka, sortiranje rezultata, a zatim ih izlaziti na drugu datoteku.
Što se tiče razvrstavanja, možete učiniti više nego samo sortirati abecednim redom. Pogledajte stranicu čovjeka za neke od sljedećih naredbi:
- tsort - naprednija topološka funkcija sortiranja
- tr - omogućuje vam da mapirate određene znakove na druge znakove i prijeđete ih između njih.
- uniq - uklanja bilo koji ne-jedinstven (čitaj: duplikat)
- awk - stvarno napredni jezik za obradu teksta / funkcija koja se može koristiti za razdvajanje polja u nazivu datoteka
- izrezati, zalijepiti / pridružiti - naredbe korisne za izoliranje polja iz tekstualnih datoteka i dodavanje novih podataka u stupce
- izgled - pretraživanja poput grep, ali koristi rječnik datoteku (koja može biti određena korisnik) za pretraživanje
- wc - omogućuje vam prebrojavanje riječi, broj linija, broj znakova i još mnogo toga
Pogledali smo još neke osnove koje danas mogu biti korisne na naredbenom retku kao iu skriptama. Tekstualni podaci često su u srcu stvari koje svakodnevno upotrebljavamo, tako da je ključna stvar za rad s njim, pretraživanje i manipuliranje.
Koje su neke od svojih omiljenih skripti? Imate li posebne skripte za tekstualne datoteke? Podijelite ono što znate u komentarima!