Sekant mūsų kalbininkų pėdomis straipsnis galėjo vadintis "Vamzdžiai", bet tai palikime tautinės OS kūrėjams ;) Geriau iš karto griebti velnią už ragų, jei naudojate freeBSD, o jei naudojate Linux ... tiek to, užteks beletristikos :D Strapsnyje toliau bus minimas tik Linux, nes naudoju Debian, bet tai tinka ir daugeliui kitų POSIX sistemų.
Kiekviena linux'o programa (naudojama konsolėje) turėtų: priimti duomenis (STDIN - standard input), grąžinti duomenis (STDOUT - standard output), bei grąžinti klaidas, jei tokių buvo vykdant programą (STDERR - standard error). Duomenis kuriuos gražina viena programa galima "sumaitinti" kitai programai. Duomenys "sumaitinami" naudojant vamzdį ( | - pipe ).
cat access.log | awk '{print $1}' | sort | uniq -c | sort -n | tail -n 20
Šis pavyzdys padės išsiaiškinti kam naudojami pipe Linux komandinėje eilutėje:
Atlikus šią ilga komandą iš access.log failo gauname 20 dažniausiai pasikartojančių adresų surūšiuotų didėjimo tvarka, bei nurodant pasikartojimų skaičių.
Jei duomenis norime nukreipti į failą, kad ir mūsų pavyzdyje - išsaugoti statistiką galima naudoti nukreipimo simbolius:
Keli pavyzdžiai pabaigai :
echo "Laikas:" > informacija.txt
date >> informacija.txt
df -h >> informacija.txt
Į failą informacija.txt bus įrašytas tekstas "Laikas:", programa date papildys failą konkrečiu laiku ir df -h įrašys į failą informaciją apie failų sistemos užimtumą.
mysql -u root -p duombaze < failas.sql
Taip galima patogiai importuoti failą (failas.sql) į duomenų bazę. Ši komanda veikia ir Windows sistemose, praverčia kada reikia importuoti didelius sql failus.
mysql -u root -p duombaze < failas.sql.gz | gzip
Jei failas yra suarchyvuotas, galime panaudoti ir pipe.
(c)
200* by Daffy :: inValid XHTML 1.1 :D :: CSS