Echo: Difference between revisions
No edit summary |
No edit summary |
||
Line 7: | Line 7: | ||
<pre> | <pre> | ||
echo "Tere maailm" | echo "Tere maailm" | ||
Tere maailm | |||
</pre> | </pre> | ||
Line 14: | Line 15: | ||
\a on häälega väljastamine juhuks kui koguaeg silmad ekraanil pole. | \a on häälega väljastamine juhuks kui koguaeg silmad ekraanil pole. | ||
<pre> | <pre> | ||
echo -e "\aÄRKA | echo -e "\aÄRKA" | ||
ÄRKA | |||
</pre> | </pre> | ||
Line 20: | Line 22: | ||
<pre> | <pre> | ||
echo -e "Täna \bn" | echo -e "Täna \bn" | ||
Tänan | |||
</pre> | </pre> | ||
\c lõikab peale asetust teksti ära | |||
<pre> | |||
echo -e "Tere \cmulle ei maitse banaan" | |||
Tere | |||
</pre> | |||
\n on reavahetuseks. | \n on reavahetuseks. | ||
<pre> | <pre> | ||
echo -e "Tere \nolen test \nnägemist" | echo -e "Tere \nolen test \nnägemist" | ||
Tere | |||
olen test | |||
nägemist | |||
</pre> | </pre> | ||
Line 45: | Line 55: | ||
<pre> | <pre> | ||
echo "Tänane kuupäev on $(date)" | echo "Tänane kuupäev on $(date)" | ||
Tänane kuupäev on Mon May 16 22:21:14 EEST 2011 | |||
</pre> | </pre> | ||
Line 51: | Line 62: | ||
<pre> | <pre> | ||
echo {one,two,red,blue}fish | echo {one,two,red,blue}fish | ||
onefish twofish redfish blue fish | |||
</pre> | </pre> | ||
Line 60: | Line 72: | ||
<pre> | <pre> | ||
echo $? | echo $? | ||
0 | |||
</pre> | </pre> | ||
Line 69: | Line 82: | ||
<pre> | <pre> | ||
echo * | wc | echo * | wc | ||
1 9 84 | |||
( üheksa faili ja kausta siin kataloogis ja 84 koos alamkaustadega kokku) | |||
</pre> | </pre> | ||
Line 75: | Line 90: | ||
<pre> | <pre> | ||
echo */ | wc | echo */ | wc | ||
1 9 75 | |||
(75 siis 9 on välja jäätud ehk ainult alam kaustad ja failid) | |||
</pre> | </pre> | ||
Saamaks ainult kataloogis asuvate failide arvu teada. | Saamaks ainult kataloogis asuvate failide arvu teada. | ||
Line 81: | Line 98: | ||
<pre> | <pre> | ||
echo *.* | wc | echo *.* | wc | ||
1 1 17 | |||
(üks fail siin kataloogis ja 17 alam kataloogides) | |||
</pre> | </pre> | ||
Revision as of 21:32, 16 May 2011
Priit Pobbul A22
Sissejuhatus
Echo on informatsiooni tagastamiseks, nagu ka sõna tähendus "kaja" ongi sisuliselt echo eesmärk tagastada kasutaja poolt soovitud teksti, käske või muutujaid.
Süntaks
echo "Tere maailm" Tere maailm
Kasutamine ja näited
-e abil reavahetus
Echo on mitme külgne käsk, näiteks võtme -e erinevad kasutus võimalused. \a on häälega väljastamine juhuks kui koguaeg silmad ekraanil pole.
echo -e "\aÄRKA" ÄRKA
\b on backspace asendus võib vaja minna kui mõne muutuja lõpp vaja ära süüa.
echo -e "Täna \bn" Tänan
\c lõikab peale asetust teksti ära
echo -e "Tere \cmulle ei maitse banaan" Tere
\n on reavahetuseks.
echo -e "Tere \nolen test \nnägemist" Tere olen test nägemist
\n on hea kasutada, kui on vaja kindlal kohal reavahetust, näiteks logidesse trükkides või muutujaid väljastades mis võiks eri ridades olla.
Echo faili salvestamine
Võib kasutada ka lihtsamate logide sisestuse jaoks, et muutuseid jälgida.
echo 'File has been deleted' > /tmp/log.txt
Praegu siis loodi näite jaoks tmp kausta logi fail, mida üks korralik admin eales ei teeks. Hea lihtne viis teada saada, mis mõnes skriptis toimub näiteks. Kasutades skriptis, kus juhul kui midagi kustutatakse, siis väljastatakse see echo on hea jälgida, mida keegi teinud on, saab ka lisada muutujatena kasutajad ning kasutus aja.
Echo ja muutujad
Echo on võimeline ka muutujaid näitama, mis järjekordselt kasuks mõnes skriptis.
echo "Tänane kuupäev on $(date)" Tänane kuupäev on Mon May 16 22:21:14 EEST 2011
Lühendamiseks hea nipp
Teine kord kui vaja, siis saab ka lühendada oletades et mingi väljundi esimene osa on muutuv ja lõpp alati sama. Saab ka vastupidi.
echo {one,two,red,blue}fish onefish twofish redfish blue fish
!NB Siin enam pole "" sest siis see funktsioon ei töötaks ja väljastataks täpselt samal kujul, nagu sisend on.
Eelmise käsu lõppemise staatus
Echo võimaldab isegi vaadata, kas eelmine käsk lõpetas korrektselt või oli seal viga.
echo $? 0
Väljundi 0 puhul oli käsu toiming ja lõpp korrektne, 1-255 puhul oli mingi viga.
Vaata palju faile kauste siin on
Saamaks teada kui palju faile ja kaustu on praeguses ja alam kataloogides.
echo * | wc 1 9 84 ( üheksa faili ja kausta siin kataloogis ja 84 koos alamkaustadega kokku)
Saamaks teada ainult selles kataloogis, kus kasutaja on, kaustade arvu.
echo */ | wc 1 9 75 (75 siis 9 on välja jäätud ehk ainult alam kaustad ja failid)
Saamaks ainult kataloogis asuvate failide arvu teada.
!NB Selles näites on oletatud, et failidel on laiendid, mistõttu . märke abil neid leida saaks! Ilma faililaiendita faile sel juhul ei loeta.
echo *.* | wc 1 1 17 (üks fail siin kataloogis ja 17 alam kataloogides)
Kasutatavad võtmed
NAME
echo - display a line of text
SYNOPSIS
echo [SHORT-OPTION]... [STRING]... echo LONG-OPTION
DESCRIPTION
Echo the STRING(s) to standard output.
-n do not output the trailing newline
-e enable interpretation of backslash escapes
-E disable interpretation of backslash escapes (default)
--help display this help and exit
--version output version information and exit
If -e is in effect, the following sequences are recognized:
\0NNN the character whose ASCII code is NNN (octal)
\\ backslash
\a alert (BEL)
\b backspace
\c produce no further output
\f form feed
\n new line
\r carriage return
\t horizontal tab
\v vertical tab