Qalabka, tarjumaadda aan daabacno maanta, waxaa loogu talagalay kuwa raba inay bartaan khadka taliska Linux. Awoodda isticmaalka qalabkan si wax ku ool ah ayaa badbaadin karta waqti badan. Gaar ahaan, waxaan ka hadli doonaa Bash shell iyo 21 amarrada waxtarka leh halkan. Waxaan sidoo kale ka hadli doonaa sida loo isticmaalo calanka amarka iyo Bash aliases si loo dedejiyo qorista tilmaamaha dhaadheer.
β
Shuruudaha
Markaad barato inaad la shaqeyso khadka taliska Linux, waxaad la kulmi doontaa fikrado badan oo waxtar u leh socodka. Qaar ka mid ah, sida "Linux" iyo "Unix", ama "shell" iyo "terminal", ayaa mararka qaarkood wareersan. Aynu ka hadalno kuwan iyo ereyo kale oo muhiim ah.
Hadda oo aan soo koobnay ereyada muhiimka ah, waxaan rabaa in aan tilmaamo in aan isticmaali doono ereyada "Bash", "shell" iyo "line order" halkan iyo sidoo kale ereyada "directory" iyo "folder".
Heerka stdin
wax soo saarka caadiga ah (wax soo saarka caadiga ah, stdout
) iyo soo saarista qaladka caadiga ah (khalad caadi ah, stderr
).
Haddii amarrada tusaalaha ah ee hoos lagu siin doono, waxaad ka heli doontaa wax la mid ah my_whatever
- Tani waxay ka dhigan tahay in jajabkan loo baahan yahay in lagu beddelo wax kaaga. Tusaale ahaan, magaca faylka.
Haddaba, ka hor intaanan u gudbin falanqaynta amarada loo qoondeeyay qoraalkan, aan eegno liiskooda iyo sharraxaaddooda kooban.
21 Bash baa amray
Helitaanka macluumaadka
man
: Waxay soo bandhigaysaa hagaha adeegsadaha (caawinta) amarka.pwd
: soo bandhigaya macluumaadka ku saabsan hagaha shaqada.ls
: wuxuu soo bandhigayaa waxa ku jira hagaha.ps
Waxay kuu ogolaanaysaa inaad aragto macluumaadka ku saabsan hababka socodsiinta.
β Hab-dhaqanka nidaamka faylka
cd
Beddel hagaha shaqada.touch
: samee fayl.mkdir
: samee hagaha.cp
Nuqul ka samee.mv
Dhaqaaq ama tirtir faylka.ln
xiriir samee.
βI/O dib u hagidda iyo dhuumaha
<
: dib u jiheeyahastdin
.>
: dib u jiheeyahastdout
.|
: tuubooyin wax soo saarka hal amar si ay u geliso amar kale.
β Akhrinta faylasha
head
: akhri bilowga faylka.tail
: akhri dhamaadka faylka.cat
: Akhri fayl oo ku daabac waxa ku jira shaashadda, ama faylasha isku xidh.
β Tirtirka faylasha, joojinta hababka
rm
: Tirtir faylka.kill
: jooji habka.
βBaadi
grep
: raadi xog.ag
: taliska sare ee raadinta.
Kaydinta kaydinta
tar
: abuurista kayd iyo la shaqayntooda.
Aynu si faahfaahsan uga hadalno amarradan.
Faahfaahinta Kooxda
Si aad u bilawdo, aynu la macaamilno amarrada, natiijooyinka kuwaas oo lagu soo saaro foomka stdout
. Caadi ahaan natiijooyinkani waxay ka muuqdaan daaqada terminaalka.
Helitaanka macluumaadka
man command_name
: muuji hagaha amarka, tusaale ahaan macluumaadka caawinta.
pwd
: muuji dariiqa loo marayo hagaha shaqada ee hadda. Inta lagu jiro la shaqeynta khadka taliska, isticmaaluhu wuxuu inta badan u baahan yahay inuu ogaado meesha saxda ah ee nidaamka uu ku jiro.
ls
: soo bandhig waxa ku jira hagaha. Amarkan waxa kale oo la isticmaalaa marar badan.
ls -a
: tus faylasha qarsoon. calanka halkan ka codsatay -a
amarrada ls
. Isticmaalka calamada waxay caawisaa in la habeeyo hab-dhaqanka amarada.
ls -l
: Muuji macluumaad faahfaahsan oo ku saabsan faylasha.
Ogow in calanka la isku dari karo. Tusaale ahaan - sida tan: ls -al
.
ps
: Eeg hababka socodsiinta
ps -e
: Muuji macluumaadka ku saabsan dhammaan hababka socda, ma aha oo kaliya kuwa la xidhiidha qolofka isticmaalaha hadda. Amarkan waxaa badanaa lagu isticmaalaa qaabkan.
β Hab-dhaqanka nidaamka faylka
cd my_directory
: u beddel hagaha shaqada my_directory
. Si kor loogu qaado hal heer geedka hagaha, isticmaal my_directory
qaraabo ../
.
cd amar
touch my_file
: abuurista faylka my_file
jidka la siiyey.
mkdir my_directory
: samee gal my_directory
jidka la siiyey.
mv my_file target_directory
: guurto faylka my_file
gal target_directory
. Markaad tilmaamayso tusaha bartilmaameedka, waxaad u baahan tahay inaad isticmaasho dariiqa saxda ah ee loo maro (oo ma aha dhismo la mid ah ../
).
kooxda mv
Waxa kale oo loo isticmaali karaa in dib loogu magacaabo faylasha ama galka. Tusaale ahaan, waxay u ekaan kartaa sidan:
mv my_old_file_name.jpg my_new_file_name.jpg
: samee nuqul fayl ah
cp my_source_file target_directorymy_source_file
oo gal gal target_directory
.
ln -s my_source_file my_target_file
: samee xiriir calaamad ah my_target_file
fayl kasta my_source_file
. Haddii aad beddesho isku xirka, feylka asalka ah sidoo kale wuu beddeli doonaa.
Haddii faylka my_source_file
waa la tirtiri doonaa, markaas my_target_file
sii ahaan doona. Calan -s
amarrada ln
wuxuu kuu ogolaanayaa inaad abuurto xiriiriyeyaasha hagayaasha.
Hadda aan ka hadalno dib u habeynta I/O iyo dhuumaha.
βI/O dib u hagidda iyo dhuumaha
my_command < my_file
: waxay bedeshaa sharaxaadaha faylka galinta caadiga ah (stdin
) fayl kasta my_file
. Tani waxay noqon kartaa mid faa'iido leh haddii amarku uu sugayo qayb ka mid ah kiiboodhka, oo xogtan mar hore ayaa lagu kaydiyay fayl.
my_command > my_file
: dib u hagaya natiijada amarka, i.e. waxa caadi ahaan geli lahaa stdout
iyo soo saarida shaashadda, fayl my_file
. Haddii faylka my_file
ma jiro - waa la abuuray. Haddii faylku jiro, dib baa loo qoraa.
Tusaale ahaan, ka dib fulinta amarka ls > my_folder_contents.txt
faylka qoraalka ayaa la abuuri doonaa oo ka kooban liiska waxa ku jira tusaha shaqada ee hadda.
Haddii halkii astaanta >
isticmaal dhismaha >>
, ka dib, waa haddii faylka loo wareejiyo amarka amarka, faylkan dib looma qori doono. Xogta waxaa lagu dari doonaa dhamaadka faylkan.
Hadda aynu eegno habaynta dhuumaha xogta.
Wax-soo-saarka hal amar waxaa lagu shubaa gelinta amar kale. Waxay la mid tahay isku xidhka tuubo kale
first_command | second_command
: calaamad qaade, |
, waxaa loo isticmaalaa in lagu diro wax soo saarka hal amar amar kale. Waxa amarka dhinaca bidix ee qaab-dhismeedka la tilmaamay u soo diro stdout
, Ku dhac stdin
amarka dhanka midig ee calaamadda dhuumaha.
Linux, xogta waxaa lagu shubi karaa iyadoo la isticmaalayo kaliya amar kasta oo si wanaagsan loo sameeyay. Inta badan waxaa la sheegaa in wax walba oo Linux ah ay yihiin dhuumo.
Waxaad ku xidhi kartaa amarro badan adoo isticmaalaya calaamadda dhuumaha. Waxay u egtahay sidan:
first_command | second_command | third_command
Dhuumaha dhowr amarro ayaa la barbar dhigi karaa dhuunta
Ogow in marka amarka bidix ee calaamadda |
, wax u soo saara stdout
, waxa ay soo saarto isla markiiba waa la heli karaa sida stdin
kooxda labaad. Taasi waa, waxay soo baxday, iyadoo la adeegsanayo dhuumaha, waxaan la macaamilaynaa fulinta amarrada barbar socda. Mararka qaarkood tani waxay keeni kartaa natiijooyin lama filaan ah. Faahfaahinta arrintan waa la akhriyi karaa
Hadda aan ka hadalno akhrinta xogta faylasha iyo muujinta shaashadda.
β Akhrinta faylasha
head my_file
: wuxuu akhriyaa khadadka bilowga faylka wuxuuna ku daabacaa shaashadda. Ma akhrin kartid kaliya waxa ku jira faylalka, laakiin sidoo kale waxa amarrada ka soo baxa stdin
iyadoo la adeegsanayo amarkan qayb ka mid ah dhuumaha.
tail my_file
: wuxuu akhriyaa khadadka dhamaadka faylka. Amarkan waxa kale oo loo isticmaali karaa dhuumaha.
Madaxa (madaxa) ayaa ka horreeya, dabada (dabada)na waa ka dambeeyaan
Haddii aad ku shaqaynayso xogta adoo isticmaalaya maktabadda pandas, markaa amarrada head
ΠΈ tail
waa in aad taqaan. Haddii taasi aysan ahayn kiiska, u fiirso sawirka kore, si fudud ayaad u xasuusan doontaa.
Tixgeli siyaabo kale oo loo akhriyo faylasha, aan ka hadalno amarka cat
.
kooxda cat
ama waxa ku jira fayl ku daabacaa shaashadda, ama waxay isku xidhaa faylal badan. Waxay kuxirantahay inta fayl ee loo gudbiyo amarkan marka loo yeero.
bisadaha amar
cat my_one_file.txt
: marka hal fayl loo gudbiyo amarkan, wuu soo saarayaa stdout
.
Haddii aad siiso laba fayl ama fayl ka badan, markaa si ka duwan ayay u dhaqmaysaa.
cat my_file1.txt my_file2.txt
: isagoo helay dhowr fayl sida gelinta, amarkani wuxuu isku xiraa waxa ku jira oo soo bandhigayaa waxa ku dhacay stdout
.
Haddii natiijada isku xidhka faylka loo baahan yahay in loo kaydiyo sidii fayl cusub, waxaad isticmaali kartaa hawlwadeenka >
:
cat my_file1.txt my_file2.txt > my_new_file.txt
Hadda aan ka hadalno sida loo tirtiro faylasha iyo joojinta hababka.
β Tirtirka faylasha, joojinta hababka
rm my_file
: tirtir faylka my_file
.
rm -r my_folder
: waxay tirtirtaa gal my_folder
iyo dhammaan faylasha iyo faylalka ay ka kooban tahay. Calan -r
waxay tusinaysaa in amarku ku shaqayn doono hab soo noqnoqda.
Si looga hortago in nidaamka uu weydiiyo xaqiijin mar kasta oo fayl ama gal la tirtiro, isticmaal calanka -f
.
kill 012345
: Waxay joojisaa nidaamka socodsiinta ee cayiman, iyadoo siinaya waqti uu si qurux badan u xidho.
kill -9 012345
: Si xoog ah u joojiya nidaamka socodsiinta ee cayiman. Daawo calanka -s SIGKILL
waxay la macno tahay calanka -9
.
βBaadi
Waxaad isticmaali kartaa amarro kala duwan si aad u raadiso xogta. Khaas ahaan - grep
, ag
ΠΈ ack
. Aan ku bilowno aqoontayada amarradan grep
. Kani waa amar waqti la tijaabiyay, amar la isku halayn karo, kaas, si kastaba ha ahaatee, wuu ka gaabiyaa kuwa kale mana aha sida ugu habboon in loo isticmaalo sida ay yihiin.
amarka grep
grep my_regex my_file
: baadi goob my_regex
Π² my_file
. Haddii kabriid la helo, xadhigga oo dhan waa la soo celinayaa, ciyaar kasta. Asal ahaan my_regex
loola dhaqmo sida hadal joogto ah.
grep -i my_regex my_file
: Baadhitaanka waxaa loo sameeyaa si aan dareen lahayn.
grep -v my_regex my_file
: soo celisa dhammaan safafka aan ku jirin my_regex
. Calan -v
macneheedu waa rogaal celis, waxay u egtahay hawlwadeenka NOT
, oo laga helay luqado badan oo barnaamijka ah.
grep -c my_regex my_file
: Soo celisa macluumaadka ku saabsan tirada taranka ee laga helay faylka qaabka raadinta.
grep -R my_regex my_folder
: wuxuu ku sameeyaa baaritaan soo noqnoqda dhammaan faylasha ku yaal galka la cayimay iyo faylalka ku dhex jira.
Hadda aan ka hadalno kooxda ag
. Mar dambe ayay timid grep
, way dhakhso badan tahay, way ku habboon tahay in lala shaqeeyo.
ag amar
ag my_regex my_file
: waxay soo celisaa macluumaadka ku saabsan lambarrada laynka, iyo khadadka laftooda, kuwaas oo taraq lagu helay my_regex
.
ag -i my_regex my_file
: Baadhitaanka waxaa loo sameeyaa si aan dareen lahayn.
kooxda ag
si toos ah uga baaraandega faylka .gitignore
oo ka saaraysa wax-soo-saarka waxa ku jira galka ama faylasha ku taxan faylkaas. Aad bay u raaxo badan tahay.
ag my_regex my_file -- skip-vcs-ignores
: waxa ku jira faylasha xakamaynta nooca tooska ah (sida .gitignore
) laguma xisaabtamo raadinta.
Intaa waxaa dheer, si loogu sheego kooxda ag
Wadooyinka faylka aad rabto inaad ka saarto raadinta, waxaad abuuri kartaa fayl .agignore
.
Bilowgii qaybtan, waxaan ku xusnay amarka ack
. Kooxaha ack
ΠΈ ag
aad bay isugu dhow yihiin, waxaan odhan karnaa waa 99% waa la is beddeli karaa. Si kastaba ha ahaatee, kooxda ag
si degdeg ah ayuu u shaqeeyaa, waana sababta aan u qeexay.
Hadda aan ka hadalno la shaqaynta kaydka.
Kaydinta kaydinta
tar my_source_directory
: wuxuu isku xiraa faylalka gal my_source_directory
geli hal fayl tarball ah. Faylasha noocan oo kale ah ayaa faa'iido u leh u wareejinta qaybo badan oo faylal ah qof.
amarka daamurka
Faylasha daamurka ee uu soo saaray amarkani waa faylal wata kordhinta .tar
(Kaydhka cajaladda). Xaqiiqda ah in ereyga "cajalad" (cajalad) uu ku qarsoon yahay magaca amarka iyo kordhinta magacyada faylalka uu abuurayo waxay muujinaysaa muddada amarkani jiray.
tar -cf my_file.tar my_source_directory
: wuxuu sameeyaa faylal kubbadda cagta ah oo magaciisu yahay my_file.tar
oo leh galka waxyaallaha my_source_directory
. Calan -c
waxay u taagan tahay "abuur" (abuur), iyo calanka -f
sida "faylka" (faylka).
Si aad faylasha uga soo saarto .tar
-fayl, isticmaal amarka tar
calammo leh -x
("saar", soo saarid) iyo -f
("faylka", faylka).
tar -xf my_file.tar
: ka soo saara faylasha my_file.tar
ilaa tusaha shaqada ee hadda.
Hadda aan ka hadalno sida loo cadaadiyo oo loo kala furfuro .tar
-faylal
tar -cfz my_file.tar.gz my_source_directory
: halkan adigoo isticmaalaya calanka -z
("zip", algorithm riixitaanka) waxay tusinaysaa in algoorithm-ka loo isticmaalo in lagu cadaadiyo faylasha gzip
(GNUzip). Isku-buufinta feylasha waxay badbaadisaa booska diskka marka la kaydinayo faylasha noocaas ah. Haddii faylasha la qorsheeyay, tusaale ahaan, in lagu wareejiyo isticmaalayaasha kale, tani waxay gacan ka geysaneysaa soo dejinta degdegga ah ee faylasha noocaas ah.
Ka fur faylka .tar.gz
waxaad ku dari kartaa calan -z
si ay u soo saaraan amarka content .tar
-faylalka, kuwaas oo aan kor ku soo hadalnay. Waxay u egtahay sidan:
tar -xfz my_file.tar.gz
Waa in la ogaadaa in kooxda tar
Waxaa jira calamo kale oo badan oo faa'iido leh.
Bash magacyo
Bash aliases (oo sidoo kale loo yaqaan aliases ama soo gaabinta) ayaa loogu talagalay in lagu abuuro magacyo la soo gaabiyey oo amarro ah ama taxanehooda, isticmaalka kuwaas oo halkii amarrada caadiga ah ay dardargeliyaan shaqada. Haddi aad magac u leedahay bu
, kaas oo qariya amarka python setup.py sdist bdist_wheel
, ka dibna si aad u wacdo amarkan, waa ku filan inaad isticmaasho magacan.
Si aad u abuurto magac noocan oo kale ah, kaliya ku dar amarka soo socda faylka ~/.bash_profile
:
alias bu="python setup.py sdist bdist_wheel"
Haddii nidaamkaagu aanu lahayn faylka ~/.bash_profile
, ka dib waxaad samayn kartaa naftaada adoo isticmaalaya amarka touch
. Ka dib markaad abuurto alias, dib u bilaw terminalka, ka dib markaa waxaad isticmaali kartaa magacan. Xaaladdan oo kale, gelinta laba xaraf ayaa beddelaya gelinta in ka badan saddex darsin xarfood ee amarka, kaas oo loogu talagalay
Π ~/.bash_profile
waxaad ku dari kartaa magacyo amarrada inta badan la isticmaalo.
βNatiijooyinka
Maqaalkan, waxaan ku daboolnay 21 amarrada Bash ee caanka ah waxaanan ka hadalnay abuurista magacyo amar. Haddii aad xiisaynayso mawduucan -
Akhristayaasha sharafta leh! Waa maxay amarrada faa'iido u leh kuwa bilowga ah miyaad ku dari kartaa kuwa looga hadlay maqaalkan?
β
Source: www.habr.com