Bash zvinyorwa: kutanga
Bash Scripts Chikamu 2: Loops
Bash Scripts, Chikamu 3: Command Line Sarudzo uye Shanduko
Bash Scripts Chikamu 4: Input uye Output
Bash Scripts, Chikamu 5: Zviratidzo, Basa Rekumashure, Script Management
Bash Scripts, Chikamu 6: Mabasa uye Kuvandudza Raibhurari
Bash Scripts, Chikamu 7: sed uye Word Processing
Bash zvinyorwa, chikamu 8: awk data processing mutauro
Bash Scripts Chikamu 9: Matauriro Enguva dzose
Bash Scripts Chikamu 10: Mienzaniso Inoshanda
Bash zvinyorwa, chikamu 11: tarisira uye otomatiki yezvinopindirana zvinoshandiswa
Nhasi tichataura nezve bash scripts. Izvi -
Manyoro emutsetse wemirairo akaunganidzwa emirairo yakafanana inogona kupinzwa kubva kukhibhodi, inounganidzwa mumafaira uye yakabatanidzwa nechimwe chinangwa chakafanana. Muchiitiko ichi, mhedzisiro yebasa rezvikwata inogona kuve yakakosha yakazvimirira kana kushanda se data rekuisa kune zvimwe zvikwata. Zvinyorwa inzira ine simba yekuita otomatiki zviito zvinogara zvichiitwa.
Saka, kana tikataura nezve mutsara wemirairo, zvinokutendera kuti uite mirairo yakati wandei kamwechete nekupinda iyo yakaparadzaniswa nesemicolon:
pwd ; whoami
Muchokwadi, kana iwe ukaedza izvi mune yako terminal, yako yekutanga bash script inosanganisira mirairo miviri yakatonyorwa. Inoshanda seizvi. Chikwata chekutanga pwd
inoratidza ruzivo nezve yazvino dhairekitori rekushanda, ipapo murairo whoami
inoratidza ruzivo nezve mushandisi wawakapinda se.
Uchishandisa nzira iyi, unogona kusanganisa mirairo yakawanda sezvaunoda pamutsara mumwe chete, iyo chete muganhu ndiyo yakawanda nhamba yenharo dzinogona kupfuudzwa kuchirongwa. Unogona kutsanangura muganhu uyu uchishandisa murairo unotevera:
getconf ARG_MAX
Mutsetse wekuraira chishandiso chikuru, asi iwe unofanirwa kuisa mirairo mairi pese paunoda. Ko kana tikanyora seti yemirairo mufaira tongodaidza iyo faira kuti iite? Muchokwadi, iyo faira yatiri kutaura nezvayo inonzi command line script.
Mashandisiro anoita bash scripts
Gadzira faira risina chinhu uchishandisa murairo touch
. Mutsetse wayo wekutanga unoda kuratidza kuti nderipi goko ratiri kuzoshandisa. Isu tiri kufarira bash
, saka mutsara wekutanga wefaira uchave:
#!/bin/bash
Mimwe mitsetse iri mufaira iyi inoshandisa chiratidzo chehashi kuratidza makomendi ayo goko hariite. Zvakadaro, mutsara wekutanga inyaya yakakosha, pane hashi inoteverwa nechiratidzo chekudanidzira (kutevedzana uku kunonzi bash
, ratidza kune sisitimu iyo script yakagadzirirwa chaizvo bash
.
Shell mirairo inoparadzaniswa nemutsara wekudya, makomendi anoparadzaniswa nechiratidzo che hashi. Izvi ndizvo zvazvinoita:
#!/bin/bash
# This is a comment
pwd
whoami
Pano, sezvakangoita pamutsetse wemirairo, unogona kunyora mirairo pamutsara mumwe, wakapatsanurwa nemasemicolon. Zvisinei, kana iwe ukanyora mirairo pamitsetse yakasiyana, faira iri nyore kuverenga. Chero zvazvingava, goko richavagadzirisa.
Kuseta script faira mvumo
Sevha faira uchipa zita myscript
, uye basa rekugadzira bash script rave kupera. Iye zvino chasara kuita kuti faira iri riitike, zvikasadaro, kana ukaedza kurimhanyisa, uchasangana nekukanganisa. Permission denied
.
Kuedza kumhanyisa script faira rine mvumo isina kurongeka
Ngatiite kuti faira riitike:
chmod +x ./myscript
Zvino ngatiedzei kuzviita:
./myscript
Mushure mekuisa zvibvumirano zvese zvinoshanda sezvazvinofanira.
Yabudirira kushandisa bash script
Mharidzo inobuda
Kuti ubudise zvinyorwa kuLinux console, shandisa murairo echo
. Ngatishandisei ruzivo rwechokwadi ichi uye tigadzirise script yedu, tichiwedzera tsananguro kune iyo data inoburitswa nemirairo yagara mairi:
#!/bin/bash
# our comment is here
echo "The current directory is:"
pwd
echo "The user logged in is:"
whoami
Izvi ndizvo zvinoitika mushure mekushandisa script yakagadziridzwa.
Kuburitsa mameseji kubva pane script
Iye zvino tinogona kuratidza zvinyorwa zvinotsanangura tichishandisa murairo echo
. Kana iwe usingazive kugadzirisa faira uchishandisa Linux zvishandiso, kana iwe usati wamboona rairo echo
, tarisai
Kushandisa Variables
Zvinosiyana zvinokutendera kuti uchengetedze ruzivo mune script faira, senge zvabuda pamirairo, kuti ishandiswe nemimwe mirairo.
Hapana chakaipa nekuita mirairo yega pasina kuchengetedza mhedzisiro yavo, asi nzira iyi ishoma mukugona kwayo.
Kune marudzi maviri emhando dzakasiyana dzinogona kushandiswa mune bash scripts:
- Environment Variables
- User Variables
Environment Variables
Dzimwe nguva shell mirairo inoda kushanda neimwe system data. Heino muenzaniso wekuratidza dhairekitori remusha remushandisi iyezvino:
#!/bin/bash
# display user home
echo "Home for the current user is: $HOME"
Ndokumbira utarise kuti isu tinogona kushandisa shanduko yesystem $HOME
mumakotesheni akapetwa kaviri, izvi hazvizodziviriri sisitimu kuti irege kuzviziva. Izvi ndizvo zvaunowana kana iwe uchimhanyisa mamiriro ari pamusoro.
Kushandisa shanduko yenharaunda mune chinyorwa
Ko kana iwe uchida kuratidza chiratidzo chemadhora pachiratidziri? Ngatiedzei izvi:
echo "I have $1 in my pocket"
Iyo sisitimu ichaona chiratidzo chedhora mumutsara wakataurwa uye fungidzira kuti tareva shanduko. Iyo script ichaedza kuratidza kukosha kwechinhu chisina kutsanangurwa $1
. Izvi hazvisi izvo zvatinoda. Kuita sei?
Mune ino mamiriro, uchishandisa iyo yekupukunyuka hunhu, backslash, pamberi pedhora chiratidzo chichabatsira:
echo "I have $1 in my pocket"
Iyo script ikozvino ichaburitsa chaizvo zvinotarisirwa.
Kushandisa kutevedzana kwekupukunyuka kudhinda chiratidzo chedhora
User Variables
Pamusoro pezvakasiyana nharaunda, bash zvinyorwa zvinokutendera kuti utsanangure uye shandisa yako wega madhizaini mune script. Misiyano yakadaro inobata kukosha kusvika script yapedza kuita.
Sezvinei nemaitiro ekuchinja, mashandisirwo emushandisi anogona kuwanikwa uchishandisa chiratidzo chedhora:
TNW-CUS-FMP - kodhi yekusimudzira yegumi muzana kuderedzwa pamasevhisi edu, inowanikwa kuti ishandiswe mukati memazuva manomwe.
#!/bin/bash
# testing variables
grade=5
person="Adam"
echo "$person is a good boy, he is in grade $grade"
Izvi ndizvo zvinoitika mushure mekuita script yakadaro.
Custom Variables muScript
Raira Kutsiva
Chimwe chezvinhu zvinonyanya kukosha zve bash scripts ndiko kukwanisa kubvisa ruzivo kubva kumirairo yekuraira uye kugovera kune zvakasiyana-siyana, zvichikubvumira kushandisa ruzivo urwu chero kupi zvako mune script file.
Pane nzira mbiri dzekuita izvi.
- Kushandisa backtick "`"
- Nekugadzira
$()
Paunenge uchishandisa nzira yekutanga, chenjerera kuti usaisa chiratidzo chimwe chete chekutaura panzvimbo yebacktick. Murairo unofanirwa kuvharirwa mumaicon maviri akadai:
mydir=`pwd`
Munzira yechipiri, chinhu chimwe chete chakanyorwa seizvi:
mydir=$(pwd)
Uye iyo script inogona kupedzisira ichitaridzika seizvi:
#!/bin/bash
mydir=$(pwd)
echo $mydir
Panguva yekushanda kwayo, kubuda kwemurairo pwd
ichaponeswa mune chinja mydir
, zviri mukati mazvo, uchishandisa murairo echo
, ichaenda kune console.
Chinyorwa chinochengetedza mhedzisiro yekuraira mune inoshanduka
Masvomhu mabasa
Kuita mashandiro emasvomhu mune script faira, unogona kushandisa kuvaka senge $((a+b))
:
#!/bin/bash
var1=$(( 5 + 5 ))
echo $var1
var2=$(( $var1 * 2 ))
echo $var2
Mashandisirwo eMasvomhu mune Chinyorwa
kana-zvino kudzora kuvaka
Mune mamwe mamiriro, iwe unofanirwa kudzora kuyerera kwekuraira kwekuraira. Semuenzaniso, kana imwe kukosha yakakura kudarika mashanu, unofanirwa kuita chimwe chiito, kana chimwe, chimwe. Izvi zvinoshanda mumamiriro mazhinji, uye pano chimiro chekutonga chichatibatsira if-then
. Muchimiro chayo chakareruka chinotaridzika seizvi:
if ΠΊΠΎΠΌΠ°Π½Π΄Π°
then
ΠΊΠΎΠΌΠ°Π½Π΄Ρ
fi
Heino muenzaniso wekushanda:
#!/bin/bash
if pwd
then
echo "It works"
fi
Muchiitiko ichi, kana murairo ukaitwa pwd
ichapedza zvinobudirira, zvinyorwa "zvinoshanda" zvicharatidzwa mukoni.
Ngatishandise ruzivo rwatinarwo uye tinyore chinyorwa chakaoma. Ngatitii tinoda kutsvaga mumwe mushandisi mukati /etc/passwd
, uye kana wakwanisa kuiwana, taura kuti iripo.
#!/bin/bash
user=likegeeks
if grep $user /etc/passwd
then
echo "The user $user Exists"
fi
Izvi ndizvo zvinoitika mushure mekushandisa script iyi.
Kutsvaga kwemushandisi
Apa takashandisa murairo grep
kutsvaga mushandisi mufaira /etc/passwd
. Kana chikwata grep
usina kujaira kwauri, tsananguro yaro inogona kuwanikwa
Mumuenzaniso uyu, kana mushandisi awanikwa, script icharatidza meseji inoenderana. Zvakadini kana mushandisi asina kuwanikwa? Muchiitiko ichi, script inongopedzisa kuurayiwa pasina kutiudza chero chinhu. Tinoda kuti atiudzewo pamusoro peizvi, saka tichavandudza kodhi.
kana-zvino-zvimwe kudzora kuvaka
Kuti purogiramu ikwanise kurondedzera zvose zvakabuda zvekutsvaga kwakabudirira uye kukundikana, tichashandisa kuvaka if-then-else
. Heino mashandiro azvinoita:
if ΠΊΠΎΠΌΠ°Π½Π΄Π°
then
ΠΊΠΎΠΌΠ°Π½Π΄Ρ
else
ΠΊΠΎΠΌΠ°Π½Π΄Ρ
fi
Kana murairo wekutanga ukadzorera zero, zvinoreva kuti yakaitwa zvinobudirira, mamiriro acho achava echokwadi uye kuurayiwa hakuzopfuuriri nebazi. else
. Zvikasadaro, kana chimwe chinhu chisiri zero chakadzoserwa, chingaratidza kukundikana, kana mhedzisiro yenhema, mirairo mushure else
.
Ngatinyorei script inotevera:
#!/bin/bash
user=anotherUser
if grep $user /etc/passwd
then
echo "The user $user Exists"
else
echo "The user $user doesnβt exist"
fi
Kuurayiwa kwake kwakadzikama else
.
Kumhanyisa script ine kana-ipapo-zvimwe kuvaka
Zvakanaka, ngatienderere mberi uye tizvibvunze pamusoro pemamiriro ezvinhu akaoma. Ko kana iwe uchida kutarisa kwete chimiro chimwe chete, asi akati wandei? Semuenzaniso, kana mushandisi anodiwa akawanikwa, meseji imwe inofanira kuratidzwa, kana imwe mamiriro akasangana, imwe meseji inofanirwa kuratidzwa, zvichingodaro. Mumamiriro ezvinhu akadaro, mamiriro edendere achatibatsira. Zvinoita seizvi:
if ΠΊΠΎΠΌΠ°Π½Π΄Π°1
then
ΠΊΠΎΠΌΠ°Π½Π΄Ρ
elif ΠΊΠΎΠΌΠ°Π½Π΄Π°2
then
ΠΊΠΎΠΌΠ°Π½Π΄Ρ
fi
Kana murairo wekutanga ukadzorera zero, iyo inoratidza kubudirira kwayo, mirairo iri mubhokisi rekutanga ichaitwa. then
, kana zvisina kudaro, kana mamiriro ekutanga ari enhema uye kana wechipiri murairo uchidzoka zero, yechipiri bhuroko rekodhi richaitwa.
#!/bin/bash
user=anotherUser
if grep $user /etc/passwd
then
echo "The user $user Exists"
elif ls /home
then
echo "The user doesnβt exist but anyway there is a directory under /home"
fi
Mune chinyorwa chakadaro, unogona, semuenzaniso, kugadzira mushandisi mutsva uchishandisa murairo useradd
, kana tsvakiridzo isina kuburitsa mhedzisiro, kana kuita chimwe chinhu chinobatsira.
Kuenzanisa kwenhamba
Mune zvinyorwa unogona kuenzanisa nhamba dzenhamba. Pazasi pane rondedzero yemirairo yakakodzera.
n1 -eq n2
Inodzorera chokwadi kanan1
zvakaenzanan2
.
n1 -ge n2
Inodzorera chokwadi kanan1
zvakawanda kana zvakaenzanan2
.
n1 -gt n2
Inodzorera chokwadi kanan1
kupfuuran2
.
n1 -le n2
Inodzorera chokwadi kanan1
zvishoma kana kuenzanan2
.
n1 -lt n2
Inodzorera chokwadi kana n1 iri shoma panen2
.
n1 -ne n2
Inodzorera chokwadi kanan1
zvisina kuenzanan2
.
Semuenzaniso, ngatiedzei imwe yevashandisi vekuenzanisa. Ziva kuti chirevo ichi chakavharirwa mumabhuraketi akaenzana.
#!/bin/bash
val1=6
if [ $val1 -gt 5 ]
then
echo "The test value $val1 is greater than 5"
else
echo "The test value $val1 is not greater than 5"
fi
Izvi ndizvo zvichabuda murairo uyu.
Kuenzanisa kwenhamba muzvinyorwa
Variable value val1
vanopfuura 5, bazi rinopedzisira raurayiwa then
kuenzanisa opareta uye meseji inoenderana inoratidzwa mune iyo console.
Kuenzanisa kwetambo
Zvinyorwa zvinogonawo kuenzanisa tambo tsika. Vashandisi vekuenzanisa vanotaridzika zviri nyore, asi tambo yekuenzanisa mashandiro ane zvimwe zvinhu, zvatichabata pazasi. Heino rondedzero yevashandisi.
str1 = str2
Yedza tambo dzekuenzana, kudzorera chokwadi kana tambo dzakafanana.
str1 != str2
Inodzorera chokwadi kana tambo dzisina kufanana.
str1 < str2
Inodzorera chokwadi kanastr1
zvishoma panestr2
.
str1 > str2
Inodzorera chokwadi kanastr1
kupfuurisastr2
.
-n str1
Inodzorera chokwadi kana kurebastr1
Pamusoro pazero.
-z str1
Inodzorera chokwadi kana kurebastr1
zvakaenzana ne zero.
Heino muenzaniso wekuenzanisa tambo mune script:
#!/bin/bash
user ="likegeeks"
if [$user = $USER]
then
echo "The user $user is the current logged in user"
fi
Somugumisiro wekuita script, tinowana zvinotevera.
Kuenzanisa tambo muzvinyorwa
Hechino chimwe chimiro chetambo kuenzanisa icho chakakodzera kutaurwa. Sezvineiwo, iyo ">" uye "<" vashandisi vanofanirwa kupukunyuka nebackslash, zvikasadaro script haishande nemazvo, kunyangwe pasina mhosho ichabuda. Iyo script inodudzira iyo ">" sign seyakabuda redirection command.
Hezvino izvo kushanda nevashandisi ava zvinoita senge mukodhi:
#!/bin/bash
val1=text
val2="another text"
if [ $val1 > $val2 ]
then
echo "$val1 is greater than $val2"
else
echo "$val1 is less than $val2"
fi
Heino mibairo yescript.
Kuenzanisa kwetambo, yambiro yakapihwa
Ndokumbira utarise kuti script, kunyangwe ichiitwa, inopa yambiro:
./myscript: line 5: [: too many arguments
Kuti tibvise yambiro iyi, tinogumisa $val2
mumashoko maviri:
#!/bin/bash
val1=text
val2="another text"
if [ $val1 > "$val2" ]
then
echo "$val1 is greater than $val2"
else
echo "$val1 is less than $val2"
fi
Iye zvino zvinhu zvose zvinoshanda sezvazvinofanira.
Kuenzanisa kwetambo
Chimwe chinhu che ">" uye "<" vashandisi mashandisiro avanoita nemavara makuru uye madiki. Kuti tinzwisise chimiro ichi, ngatigadzirirei faira remavara rine zvinotevera zvirimo:
Likegeeks
likegeeks
Ngatirichengetedze nekuripa zita myfile
, wobva wamhanya unotevera kuraira mune terminal:
sort myfile
Ichagadzirisa mitsara kubva mufaira seizvi:
likegeeks
Likegeeks
chikwata sort
, nekusarudzika, inoronga tambo muhurongwa hwekukwira, ndiko kuti, vara diki mumuenzaniso wedu idiki pane iro guru. Zvino ngatigadzirirei script inofananidza tambo dzakafanana:
#!/bin/bash
val1=Likegeeks
val2=likegeeks
if [ $val1 > $val2 ]
then
echo "$val1 is greater than $val2"
else
echo "$val1 is less than $val2"
fi
Kana iwe ukaimhanyisa, zvinoita kuti zvese zvave neimwe nzira kutenderedza - mavara madiki ikozvino akura kupfuura iwo makuru.
Iyo yemhando yekuraira uye kuenzanisa tambo mune script faira
Mukuenzanisa mirairo, mavara makuru madiki pane madiki. Kuenzanisa kwetambo pano kunoitwa nekuenzanisa macode eASCII emavara, kurongeka kwerudzi nekudaro kunoenderana nemakodhi ehunhu.
chikwata sort
, zvakare, inoshandisa kurongeka kwakatsanangurwa mumasetimu emutauro wesystem.
File checks
Zvichida mirairo inotevera inoshandiswa kazhinji mune bash scripts. Vanokutendera kuti utarise akasiyana mamiriro maererano nemafaira. Heino rondedzero yemirairo iyi.
-d file
Inotarisa kana faira ririko uye idhairekitori.
-e file
Inotarisa kana faira iripo.
-f file
Inotarisa kana faira ririko uye ifaira.
-r file
Inotarisa kuti faira ririko here uye rinoverengwa.
-s file Π
Inotarisa kuti faira ririko here uye harina chinhu.
-w file
Inotarisa kana faira riripo uye rinonyorwa.
-x file
Inotarisa kuti faira iriko here uye kuti rinoitwa here.
file1 -nt file2
Tarisa kana chiri chitsvafile1
panefile2
.
file1 -ot file2
Tarisa kana mukurufile1
panefile2
.
-O file
Inotarisa kuti faira ririko here uye nderemushandisi aripo.
-G file
Inotarisa kana faira riripo uye kana ID yeboka rayo inoenderana neiyo ID yeboka remushandisi iripo.
Mirairo iyi, nemimwe mizhinji yakurukurwa nhasi, iri nyore kuyeuka. Mazita avo, ari mapfupi emashoko akasiyana-siyana, anoratidza zvakananga macheki avanoita.
Ngatiedzei imwe yemirairo mukuita:
#!/bin/bash
mydir=/home/likegeeks
if [ -d $mydir ]
then
echo "The $mydir directory exists"
cd $ mydir
ls
else
echo "The $mydir directory does not exist"
fi
Iyi script, yedhairekitori iripo, icharatidza zvirimo.
Kunyora zviri mudhairekitori
Isu tinotenda kuti iwe unogona kuedza nemirairo yasara iwe; ese anoshandiswa zvinoenderana nemusimboti mumwe.
Migumisiro
Nhasi takataura nezve maitiro ekutanga kunyora bash zvinyorwa uye takafukidza zvimwe zvinhu zvakakosha. Muchokwadi, iyo nyaya ye bash programming yakakura. Ichi chinyorwa ishanduro yechikamu chekutanga chechikamu chikuru chezvinyorwa zve11. Kana uchida kuenderera mberi izvozvi, heino runyoro rwemabviro ezvigadzirwa izvi. Kuti zvive nyore, shanduro yauchangobva kuverenga yaiswa pano.
Bash Script Nhanho Nenhanho - pano tiri kutaura nezvekuti ungatanga sei kugadzira zvinyorwa zvebash, kushandiswa kwezvinyorwa kunofungidzirwa, zvimiro zvemamiriro ezvinhu, kuverenga, kuenzaniswa kwenhamba, tambo, uye kutsvaga ruzivo pamusoro pemafaira zvinotsanangurwa.Bash Scripting Chikamu 2, Bash zvinoshamisa - pano maitiro ekushanda nawo uye nepo zvishwe zvichiratidzwa.Bash Scripting Chikamu 3, Paramita & sarudzo -Ichi chinyorwa chakatsaurirwa kuraira mitsara paramita uye makiyi anogona kupfuudzwa kune zvinyorwa, kushanda nedata iro mushandisi anopinda uye rinogona kuverengwa kubva kumafaira.Bash Scripting Chikamu 4, Input & Output - pano tiri kutaura nezve faira tsananguro uye kushanda navo, nezve kupinza, kuburitsa, kukanganisa hova, uye nezve yakabuda redirection.Bash Scripting Chikamu 5, Sighals & Mabasa -Ichi chinyorwa chakatsaurirwa kuLinux masiginecha, kugadziridzwa kwavo mumanyoro, uye kuvhura zvinyorwa pahurongwa.Bash Scripting Chikamu 6, Mabasa - pano iwe unogona kudzidza nezve kugadzira uye kushandisa mabasa muzvinyorwa uye kugadzira maraibhurari.Bash Scripting Chikamu 7, Kushandisa sed - Chinyorwa ichi chakazvipira kushanda neiyo sed yekutenderera mameseji edhita.Bash Scripting Chikamu 8, Uchishandisa awk - ichi chinyorwa chakatsaurirwa kuhurongwa mumutauro weawk data processing.Bash Scripting Chikamu 9, Matauriro Enguva dzose - pano iwe unogona kuverenga nezve kushandisa nguva dzose kutaura mune bash scripts.Bash Scripting Chikamu 10, Mienzaniso Inoshanda - heano maitiro ekushanda nemameseji anogona kutumirwa kune vashandisi, pamwe nenzira yekutarisa dhisiki.Bash Scripting Chikamu 11, Tarisira Murairo -Ichi chinyorwa chakatsaurirwa kune Tarisira chishandiso, icho iwe chaunogona otomatiki kudyidzana nezvinopindirana zvinoshandiswa. Kunyanya, isu tiri kutaura nezve kutarisira zvinyorwa uye kudyidzana kwavo ne bash script uye mamwe mapurogiramu.
Isu tinotenda kuti chimwe chezvakakosha zveiyi nhevedzano yezvinyorwa ndechekuti, kutanga kubva kune yakapusa, yakakodzera kune vashandisi vechero nhanho, zvishoma nezvishoma inotungamira kune yakakomba misoro, ichipa munhu wese mukana wekufambira mberi mukusikwa kweLinux command line zvinyorwa. .
Vadiwa vaverengi! Tinokumbira bash programming gurus kuti vataure nezve kuti vasvika sei pakakwirira pehunyanzvi hwavo, kugovera zvakavanzika zvavo, uye isu tinotarisira kugamuchira zvinoonekwa kubva kune avo vachangobva kunyora script yavo yekutanga.
Vashandisi vakanyoresa chete ndivo vanogona kutora chikamu muongororo.
Ndinofanira kushandura mamwe asara ezvinyorwa here?
-
Ehe!
-
No no need
1030 vashandisi vakavhota. 106 vashandisi vakaramba.
Source: www.habr.com