Tha an stuth, a tha sinn a’ foillseachadh an-diugh air eadar-theangachadh, airson an fheadhainn a tha airson maighstireachd a dhèanamh air loidhne-àithne Linux. Faodaidh an comas an inneal seo a chleachdadh gu h-èifeachdach tòrr ùine a shàbhaladh. Gu sònraichte, bruidhnidh sinn mu dheidhinn slige Bash agus òrdughan feumail 21 an seo. Bruidhnidh sinn cuideachd mu mar a chleachdas tu brataichean àithne agus aliases Bash gus clò-sgrìobhadh stiùiridhean fada a luathachadh.
→
Cumhachan
Mar a dh'ionnsaicheas tu a bhith ag obair leis an loidhne-àithne Linux, thig thu tarsainn air mòran bhun-bheachdan a tha cuideachail airson seòladh. Tha cuid dhiubh, mar "Linux" agus "Unix", no "shell" agus "terminal", uaireannan troimh-chèile. Bruidhnidh sinn mu dheidhinn seo agus teirmean cudromach eile.
A-nis gu bheil sinn air na teirmean cudromach a chòmhdach, tha mi airson a chomharrachadh gun cleachd mi na briathran “Bash”, “slige” agus “loidhne àithne” gu h-eadar-mhalairteach an seo, a bharrachd air na briathran “eòlaire” agus “pasgan”.
Coitcheann stdin
), toradh àbhaisteach (toradh àbhaisteach, stdout
) agus toradh mearachd àbhaisteach (mearachd àbhaisteach, stderr
).
Ma tha anns na h-òrdughan eisimpleir a thèid a thoirt seachad gu h-ìosal, gheibh thu rudeigin mar my_whatever
- tha seo a 'ciallachadh gum feum rudeigin de do chuid a chur an àite a' chriomag seo. Mar eisimpleir, ainm faidhle.
A-nis, mus lean sinn air adhart le mion-sgrùdadh air na h-òrdughan a tha an stuth seo coisrigte dha, leig dhuinn sùil a thoirt air an liosta aca agus na tuairisgeulan goirid aca.
21 Bash àithne
▍ A’ faighinn fiosrachadh
man
: A’ taisbeanadh an stiùireadh cleachdaiche (cuideachadh) airson an àithne.pwd
: a’ taisbeanadh fiosrachadh mun eòlaire obrach.ls
: a 'taisbeanadh susbaint an eòlaire.ps
: A’ leigeil leat fiosrachadh fhaicinn mu phròiseasan ruith.
▍ Làimhseachadh siostam faidhle
cd
: atharraich eòlaire obrach.touch
: cruthaich faidhle.mkdir
: cruthaich eòlaire.cp
: Dèan lethbhreac de fhaidhle.mv
: Gluais no sguab às faidhle.ln
: cruthaich ceangal.
▍ Ath-stiùireadh I / O agus loidhnichean-phìoban
<
: ath-sheòladhstdin
.>
: ath-sheòladhstdout
.|
: pìobaireachd toradh aon àithne gu cuir a-steach àithne eile.
▍ A’ leughadh fhaidhlichean
head
: leugh toiseach an fhaidhle.tail
: leugh deireadh an fhaidhle.cat
: Leugh faidhle agus clò-bhuail na tha ann dhan sgrion, no co-cheangail faidhlichean.
▍ Cuir às do fhaidhlichean, stad air pròiseasan
rm
: Sguab às faidhle.kill
: stad air a’ phròiseas.
▍ Rannsaich
grep
: lorg fiosrachaidh.ag
: àithne adhartach airson lorg.
▍ Tasglann
tar
: cruthachadh thasglannan agus ag obair còmhla riutha.
Bruidhnidh sinn mu na h-òrdughan sin ann am barrachd mionaideachd.
Mion-fhiosrachadh sgioba
An toiseach, leig dhuinn dèiligeadh ris na h-òrdughan, agus tha na toraidhean air an cur a-mach san fhoirm stdout
. Mar as trice bidh na toraidhean sin a’ nochdadh ann an uinneag crìochnachaidh.
▍ A’ faighinn fiosrachadh
man command_name
: seall an stiùireadh àithne, i.e. fiosrachadh cuideachaidh.
pwd
: seall an t-slighe chun an eòlaire obrach làithreach. Rè a bhith ag obair leis an loidhne-àithne, gu tric feumaidh an neach-cleachdaidh faighinn a-mach càite dìreach san t-siostam a tha e.
ls
: seall susbaint eòlaire. Tha an àithne seo cuideachd air a chleachdadh gu math tric.
ls -a
: seall faidhlichean falaichte. bratach air a chur an sàs an seo -a
àitheantan ls
. Bidh cleachdadh brataichean a’ cuideachadh le bhith a’ gnàthachadh giùlan nan òrduighean.
ls -l
: Seall fiosrachadh mionaideach mu fhaidhlichean.
Thoir an aire gum faodar brataichean a chur còmhla. Mar eisimpleir - mar seo: ls -al
.
ps
: Seall pròiseasan ruith.
ps -e
: Seall fiosrachadh mu na pròiseasan ruith air fad, chan e dìreach an fheadhainn a tha co-cheangailte ris an t-slige cleachdaiche làithreach. Tha an àithne seo gu tric air a chleachdadh san fhoirm seo.
▍ Làimhseachadh siostam faidhle
cd my_directory
: atharraich eòlaire obrach gu my_directory
. Gus gluasad suas aon ìre sa chraobh eòlaire, cleachd my_directory
slighe càirdeach ../
.
òrdugh cd
touch my_file
: cruthachadh fhaidhlichean my_file
air an t-slighe a thugadh seachad.
mkdir my_directory
: cruthaich pasgan my_directory
air an t-slighe a thugadh seachad.
mv my_file target_directory
: gluais faidhle my_file
gu pasgan target_directory
. Nuair a bhios tu a’ sònrachadh an eòlaire targaid, feumaidh tu an t-slighe iomlan a chleachdadh thuige (agus chan e togail mar ../
).
An sgioba mv
faodar a chleachdadh cuideachd gus faidhlichean no pasganan ath-ainmeachadh. Mar eisimpleir, is dòcha gum bi e coltach ri seo:
mv my_old_file_name.jpg my_new_file_name.jpg
: cruthaich lethbhreac de fhaidhle
cp my_source_file target_directorymy_source_file
agus cuir ann am pasgan e target_directory
.
ln -s my_source_file my_target_file
: cruthaich ceangal samhlachail my_target_file
gach faidhle my_source_file
. Ma dh'atharraicheas tu an ceangal, atharraichidh am faidhle tùsail cuideachd.
Ma tha am faidhle my_source_file
thèid a sguabadh às, ma-thà my_target_file
fanaidh. Bratach -s
àitheantan ln
a’ leigeil leat ceanglaichean a chruthachadh airson clàran.
A-nis bruidhnidh sinn mu ath-stiùireadh I / O agus loidhnichean-phìoban.
▍ Ath-stiùireadh I / O agus loidhnichean-phìoban
my_command < my_file
: a’ dol an àite an tuairisgeul faidhle inntrigidh àbhaisteach (stdin
) gach faidhle my_file
. Faodaidh seo a bhith feumail ma tha an àithne a’ feitheamh ri beagan a-steach bhon mheur-chlàr, agus tha an dàta seo air a shàbhaladh ann am faidhle mu thràth.
my_command > my_file
: ag ath-stiùireadh toraidhean an àithne, i.e. dè a bhiodh a’ dol a-steach mar as trice stdout
agus toradh chun sgrion, gu faidhle my_file
. Ma tha am faidhle my_file
chan eil e ann - tha e air a chruthachadh. Ma tha am faidhle ann, tha e air ath-sgrìobhadh.
Mar eisimpleir, às deidh an àithne a chuir an gnìomh ls > my_folder_contents.txt
thèid faidhle teacsa a chruthachadh anns a bheil liosta de na tha san eòlaire obrach làithreach.
Ma tha an àite an t-samhla >
cleachdadh an togail >>
, an uairsin, cho fad 's gu bheil am faidhle dhan tèid toradh na h-àithne ath-stiùireadh ann, cha tèid am faidhle seo a sgrìobhadh thairis. Thèid an dàta a chur ri deireadh an fhaidhle seo.
A-nis leig dhuinn sùil a thoirt air giollachd loidhne-phìoban dàta.
Tha toradh aon àithne air a bhiathadh a-steach do chuir a-steach àithne eile. Tha e coltach ri bhith a’ ceangal aon phìob ri fear eile
first_command | second_command
: samhla giùlain, |
, air a chleachdadh gus toradh aon àithne a chuir gu àithne eile. Na tha an àithne air taobh clì an structair a chaidh a mhìneachadh a’ cur thuige stdout
, tuiteam a-steach stdin
àithne air taobh deas samhla na loidhne-phìoban.
Air Linux, faodar dàta a phìobadh le bhith a’ cleachdadh dìreach òrdugh sam bith air a dheagh chruthachadh. Thathas ag ràdh gu tric gu bheil a h-uile dad ann an Linux na loidhne-phìoban.
Faodaidh tu iomadh àithne a shìneadh a’ cleachdadh samhla na loidhne-phìoban. Tha e coltach ri seo:
first_command | second_command | third_command
Faodar loidhne-phìoban de ghrunn òrdughan a choimeas ri loidhne-phìoban
Thoir an aire nuair a tha an àithne air taobh clì an t-samhla |
, cuir a-mach rudeigin gu stdout
, tha na tha i a’ toirt a-mach ri fhaighinn sa bhad mar stdin
dàrna sgioba. Is e sin, tha e a 'tionndadh a-mach gu bheil, a' cleachdadh na loidhne-phìoban, tha sinn a 'dèiligeadh ri co-shìnte coileanadh òrdughan. Uaireannan faodaidh seo leantainn gu toraidhean ris nach robh dùil. Faodar mion-fhiosrachadh mu dheidhinn seo a leughadh
A-nis bruidhnidh sinn mu bhith a’ leughadh dàta bho fhaidhlichean agus gan taisbeanadh air an sgrion.
▍ A’ leughadh fhaidhlichean
head my_file
: a’ leughadh loidhnichean bho thoiseach faidhle agus gan clò-bhualadh chun sgrion. Faodaidh tu chan e a-mhàin susbaint nam faidhlichean a leughadh, ach cuideachd na tha na h-òrdughan a’ toirt a-mach stdin
a’ cleachdadh an àithne seo mar phàirt den loidhne-phìoban.
tail my_file
: a’ leughadh loidhnichean bho dheireadh an fhaidhle. Faodar an àithne seo a chleachdadh ann an loidhne-phìoban cuideachd.
Tha ceann (ceann) air a bheulaibh, agus earball (earball) air a chùlaibh
Ma tha thu ag obair le dàta a’ cleachdadh an leabharlann pandathan, an uairsin na h-òrdughan head
и tail
bu chòir a bhith eòlach ort. Mura h-eil seo fìor, thoir sùil air an fhigear gu h-àrd, agus bidh cuimhne agad orra gu furasta.
Beachdaich air dòighean eile air faidhlichean a leughadh, bruidhnidh sinn mun àithne cat
.
sgioba cat
an dàrna cuid a’ clò-bhualadh susbaint faidhle chun sgrion, no a’ co-cheangail grunn fhaidhlichean. Tha e an urra ri cia mheud faidhle a thèid a thoirt don àithne seo nuair a thèid an gairm.
àithne cat
cat my_one_file.txt
: nuair a thèid aon fhaidhle a thoirt don àithne seo, bheir e a-mach e gu stdout
.
Ma bheir thu dà fhaidhle no barrachd dha, bidh e gad ghiùlan fhèin ann an dòigh eadar-dhealaichte.
cat my_file1.txt my_file2.txt
: an dèidh grunn fhaidhlichean fhaighinn mar chur-a-steach, bidh an àithne seo a' co-chòrdadh ris na tha annta agus a' taisbeanadh na thachair ann stdout
.
Ma tha feum air toradh co-chòrdadh faidhle a shàbhaladh mar fhaidhle ùr, faodaidh tu an gnìomhaiche a chleachdadh >
:
cat my_file1.txt my_file2.txt > my_new_file.txt
A-nis bruidhnidh sinn mu mar as urrainn dhut faidhlichean a dhubhadh às agus stad a chuir air pròiseasan.
▍ Cuir às do fhaidhlichean, stad air pròiseasan
rm my_file
: sguab às am faidhle my_file
.
rm -r my_folder
: sguab às pasgan my_folder
agus a h-uile faidhle agus pasgan a th’ ann. Bratach -r
a’ nochdadh gun ruith an àithne ann am modh ath-chuairteach.
Gus casg a chuir air an t-siostam bho bhith ag iarraidh dearbhadh gach uair a thèid faidhle no pasgan a dhubhadh às, cleachd am bratach -f
.
kill 012345
: A’ stad air a’ phròiseas ruith ainmichte, a’ toirt ùine dha dùnadh gu gràsmhor.
kill -9 012345
: Gu làidir a 'cur crìoch air a' phròiseas ruith ainmichte. Seall Bratach -s SIGKILL
a’ ciallachadh an aon rud ris a’ bhratach -9
.
▍ Rannsaich
Faodaidh tu diofar òrdughan a chleachdadh gus dàta a lorg. Gu sònraichte - grep
, ag
и ack
. Tòisichidh sinn ar n-aithne air na h-àithnean so le grep
. Is e òrdugh earbsach le deuchainn ùine a tha seo, a tha, ge-tà, nas slaodaiche na feadhainn eile agus chan eil e cho goireasach ri chleachdadh ’s a tha iad.
grep àithne
grep my_regex my_file
: lorg my_regex
в my_file
. Ma lorgar maids, thèid an sreang gu lèir a thilleadh, airson gach maids. Deònach my_regex
air a làimhseachadh mar abairt àbhaisteach.
grep -i my_regex my_file
: Tha an rannsachadh air a dhèanamh ann an dòigh nach eil mothachail air cùis.
grep -v my_regex my_file
: tillidh e gach sreath anns nach eil my_regex
. Bratach -v
a’ ciallachadh tionndadh, tha e coltach ris a’ ghnìomhaiche NOT
, a lorgar ann an iomadh cànan prògramaidh.
grep -c my_regex my_file
: A’ tilleadh fiosrachadh mun àireamh de mhaitsean airson a’ phàtrain a chaidh a sgrùdadh a chaidh a lorg san fhaidhle.
grep -R my_regex my_folder
: a’ dèanamh sgrùdadh ath-chuairteach anns a h-uile faidhle a tha sa phasgan ainmichte agus anns na pasganan a tha neadachadh ann.
A-nis bruidhnidh sinn mun sgioba ag
. Thàinig i nas fhaide air adhart grep
, tha e nas luaithe, tha e nas goireasaiche obrachadh leis.
ag àithne
ag my_regex my_file
: a’ tilleadh fiosrachadh mu àireamhan loidhne, agus na loidhnichean fhèin, anns an deach maidsean a lorg le my_regex
.
ag -i my_regex my_file
: Tha an rannsachadh air a dhèanamh ann an dòigh nach eil mothachail air cùis.
sgioba ag
pròiseas am faidhle gu fèin-ghluasadach .gitignore
agus a’ dùnadh a-mach às an toradh na lorgar anns na pasganan no na faidhlichean a tha air an liostadh san fhaidhle sin. Tha e glè chofhurtail.
ag my_regex my_file -- skip-vcs-ignores
: susbaint faidhlichean smachd tionndadh fèin-ghluasadach (mar .gitignore
) nach eil air a thoirt fa-near anns an rannsachadh.
A bharrachd air an sin, gus innse don sgioba ag
air na slighean faidhle a tha thu airson a thoirmeasg bhon rannsachadh, faodaidh tu faidhle a chruthachadh .agignore
.
Aig toiseach na h-earrainn seo, thug sinn iomradh air an àithne ack
. Sgiobaidhean ack
и ag
glè choltach, faodaidh sinn a ràdh gu bheil iad 99% eadar-mhalairteach. Ach, an sgioba ag
ag obair nas luaithe, is ann air sgàth sin a thug mi cunntas air.
A-nis bruidhnidh sinn mu bhith ag obair le tasglannan.
▍ Tasglann
tar my_source_directory
: concatenates faidhlichean o phasgan my_source_directory
ann an aon fhaidhle tarball. Tha faidhlichean mar seo feumail airson seataichean mòra de fhaidhlichean a ghluasad gu cuideigin.
tàr àithne
Tha na faidhlichean tarball a ghineadh leis an àithne seo nam faidhlichean leis an leudachadh .tar
(Tape Archive). Tha an fhìrinn gu bheil am facal “teip” (teip) falaichte ann an ainm na h-àithne agus ann an leudachadh ainmean nam faidhlichean a chruthaicheas e a’ nochdadh dè cho fada ‘s a tha an àithne seo air a bhith ann.
tar -cf my_file.tar my_source_directory
: a 'cruthachadh faidhle tarball ainmichte my_file.tar
le susbaint pasgan my_source_directory
. Bratach -c
a’ seasamh airson “cruthaich” (cruthachadh), agus a’ bhratach -f
mar "faidhle" (faidhle).
Gus faidhlichean a thoirt a-mach à .tar
-file, cleachd an àithne tar
le brataichean -x
("earrann", às-tharraing) agus -f
("faidhle", faidhle).
tar -xf my_file.tar
: thoir air falbh faidhlichean o my_file.tar
dhan eòlaire obrach làithreach.
A-nis bruidhnidh sinn mu mar a nì thu teannachadh agus dì-dhùmhlachadh .tar
- faidhlichean.
tar -cfz my_file.tar.gz my_source_directory
: an seo a 'cleachdadh a' bhratach -z
("zip", algairim teannachaidh) a 'nochdadh gum bu chòir an algairim a chleachdadh gus faidhlichean a dhlùthadh gzip
(GNUzip). Bidh teannachadh faidhle a’ sàbhaladh àite diosc nuair a bhios tu a’ stòradh fhaidhlichean mar sin. Ma tha na faidhlichean air an dealbhadh, mar eisimpleir, airson an gluasad gu luchd-cleachdaidh eile, bidh seo a 'cur ri luchdachadh sìos faidhlichean mar sin nas luaithe.
Dèan unzip air an fhaidhle .tar.gz
faodaidh tu bratach a chur ris -z
chun an àithne susbaint tarraing a-mach .tar
-files, air an do bhruidhinn sinn gu h-àrd. Tha e coltach ri seo:
tar -xfz my_file.tar.gz
Bu chòir a thoirt fa-near gu bheil an sgioba tar
Tha tòrr a bharrachd brataichean feumail ann.
Ailias Bash
Tha aliases Bash (ris an canar cuideachd ailiasan no giorrachaidhean) air an dealbhadh gus ainmean giorraichte de dh’ àitheantan no na sreathan aca a chruthachadh, agus bidh an cleachdadh an àite òrdughan cunbhalach a’ luathachadh obair. Ma tha ailias agad bu
, a tha 'falach na h-àithne python setup.py sdist bdist_wheel
, an uairsin gus an àithne seo a ghairm, tha e gu leòr an ailias seo a chleachdadh.
Gus a leithid de alias a chruthachadh, dìreach cuir an àithne a leanas ris an fhaidhle ~/.bash_profile
:
alias bu="python setup.py sdist bdist_wheel"
Mura h-eil am faidhle aig an t-siostam agad ~/.bash_profile
, an uairsin faodaidh tu a chruthachadh leat fhèin a’ cleachdadh an àithne touch
. Às deidh dhut an alias a chruthachadh, ath-thòisich an inneal-crìochnachaidh, agus às deidh sin faodaidh tu an ailias seo a chleachdadh. Anns a’ chùis seo, tha cuir a-steach dà charactar a’ dol an àite cuir a-steach barrachd air trì dusan caractar den àithne, a thathar an dùil airson
В ~/.bash_profile
faodaidh tu ailias a chur ris airson òrdughan sam bith a chleachdar gu tric.
▍ Toraidhean
Anns an dreuchd seo, tha sinn air 21 òrdughan Bash mòr-chòrdte a chòmhdach agus air bruidhinn mu bhith a’ cruthachadh ailiasan àithne. Ma tha ùidh agad sa chuspair seo -
Luchd leughaidh! Dè na h-òrdughan a tha feumail do luchd-tòiseachaidh a chuireadh tu ris an fheadhainn air an deach beachdachadh san artaigil seo?
→
Source: www.habr.com