Izvo zvinyorwa, dudziro yatinoburitsa nhasi, inoitirwa avo vanoda kugona iyo Linux command line. Kugona kushandisa chishandiso ichi zvinobudirira kunogona kuchengetedza nguva yakawanda. Kunyanya, isu tichataura nezve Bash shell uye 21 inobatsira mirairo pano. Isu tichazotaurawo nezve mashandisiro emirairo mireza uye Bash aliases kukurumidza kutaipa kwemirairo refu.
β
Terms
Sezvo iwe uchidzidza kushanda neLinux command line, iwe unosangana nezvakawanda pfungwa dzinobatsira kufamba. Vamwe vavo, se "Linux" uye "Unix", kana "shell" uye "terminal", dzimwe nguva vanovhiringidzika. Ngatitaurei nezve aya nemamwe mazwi akakosha.
Zvino zvatabata mazwi akakosha, ndinoda kuratidza kuti ndichashandisa mazwi ekuti "Bash", "shell" uye "command line" zvakasiyana pano, pamwe chete nemazwi ekuti "dhairekitori" uye "folder".
Standard stdin
), yakajairika kubuda (yakajairwa kubuda, stdout
) uye yakajairika kukanganisa kukanganisa (yakajairwa kukanganisa, stderr
).
Kana mumuenzaniso mirairo iyo ichapihwa pazasi, iwe unowana chimwe chinhu chakadai my_whatever
- izvi zvinoreva kuti chidimbu ichi chinoda kutsiviwa nechimwe chako. Semuenzaniso, zita refaira.
Zvino, tisati taenderera mberi nekuongororwa kwemirairo iyo chinyorwa ichi chakatsaurirwa, ngatitarisei rondedzero yavo uye tsananguro yavo pfupi.
21 Bash anorayira
βKuwana ruzivo
man
: Inoratidza gwara remushandisi (rubatsiro) rwekuraira.pwd
: inoratidza ruzivo nezve dhairekitori rekushanda.ls
: inoratidza zviri mukati medhairekitori.ps
: Inokutendera iwe kuti uone ruzivo nezve inomhanya maitiro.
βFaira system manipulation
cd
: shandura dhairekitori rekushanda.touch
: gadzira faira.mkdir
: gadzira dhairekitori.cp
: Kopa faira.mv
: Fambisa kana kudzima faira.ln
: gadzira chinongedzo.
βI/O kutungamira patsva uye mapaipi
<
: redirectstdin
.>
: redirectstdout
.|
: pombi inobuda yeimwe command kune yekuisa yemumwe kuraira.
βKuverenga mafaira
head
: verenga kutanga kwefaira.tail
: verenga kupera kwefaira.cat
: Verenga faira uye pirinda zvirimo kuchiratidziro, kana concatenate mafaera.
βKudzima mafaera, kumisa maitiro
rm
: Bvisa faira.kill
: kumisa maitiro.
βTsvaga
grep
: tsvaga ruzivo.ag
: murairo wepamusoro wekutsvaga.
βKuchengeta
tar
: kugadzira zvinyorwa uye kushanda nazvo.
Ngatitaure nezvemirairo iyi zvakadzama.
Team Details
Kutanga, ngatitarisei nemirairo, mhedzisiro yacho inopihwa mufomu stdout
. Kazhinji mhinduro idzi dzinoonekwa pahwindo rekupedzisira.
βKuwana ruzivo
man command_name
: ratidza gwara rekuraira, i.e. ruzivo rwekubatsira.
pwd
: ratidza nzira kune ikozvino kushanda dhairekitori. Mukati mekushanda nemutsara wekuraira, mushandisi kazhinji anoda kuziva kuti ndepapi muhurongwa hwaari.
ls
: ratidza zviri mukati medhairekitori. Uyu murairo unoshandiswawo kazhinji.
ls -a
: ratidza mafaera akavanzika. mureza wakaiswa pano -a
mirairo ls
. Kushandiswa kwemireza kunobatsira kugadzirisa maitiro emirairo.
ls -l
: Ratidza ruzivo rwakadzama nezvemafaira.
Ziva kuti mireza inogona kusanganiswa. Somuenzaniso - seizvi: ls -al
.
ps
: Ona maitiro ekumhanya.
ps -e
: Ratidza ruzivo nezve ese arikumhanya maitiro, kwete iwo akabatana neazvino mushandisi shell. Uyu murairo unowanzoshandiswa mune iyi fomu.
βFaira system manipulation
cd my_directory
: shandura dhairekitori rekushanda kuti my_directory
. Kuti ukwire nhanho imwe mudhairekitori muti, shandisa my_directory
nzira yakabatana ../
.
cd command
touch my_file
: kugadzira mafaira my_file
munzira yakapihwa.
mkdir my_directory
: gadzira folda my_directory
munzira yakapihwa.
mv my_file target_directory
: fambisa faira my_file
kufolder target_directory
. Paunenge uchitsanangura dhairekitori rinonangwa, unofanirwa kushandisa iyo yakakwana nzira kwairi (uye kwete kuvaka senge ../
).
team mv
inogona zvakare kushandiswa kutumidzazve mafaera kana maforodha. Semuenzaniso, inogona kutaridzika seizvi:
mv my_old_file_name.jpg my_new_file_name.jpg
: gadzira kopi yefaira
cp my_source_file target_directorymy_source_file
woiisa mufodhi target_directory
.
ln -s my_source_file my_target_file
: gadzira chinongedzo chekufananidzira my_target_file
per file my_source_file
. Kana iwe ukashandura chinongedzo, iyo yekutanga faira ichachinja zvakare.
Kana iyo faira my_source_file
zvichadzimwa, ipapo my_target_file
zvicharamba zviripo. Flag -s
mirairo ln
inobvumidza iwe kugadzira zvinongedzo zvedhairekitori.
Zvino ngatitaure nezve I/O redirection nemapaipi.
βI/O kutungamira patsva uye mapaipi
my_command < my_file
: inotsiva iyo yakajairwa yekuisa faira descriptor (stdin
) pafaira my_file
. Izvi zvinogona kubatsira kana murairo wakamirira kumwe kupinza kubva kukhibhodi, uye iyi data yakatochengetwa mufaira.
my_command > my_file
: inotungamira mibairo yekuraira, kureva izvo zvaizowanzopinda stdout
uye yakabuda kune iyo skrini, kune faira my_file
. Kana iyo faira my_file
haipo - yakagadzirwa. Kana iyo faira iripo, inonyorwa pamusoro.
Semuenzaniso, mushure mekuita murairo ls > my_folder_contents.txt
faira remavara richagadzirwa rine runyoro rwezviri mudhairekitori rekushanda razvino.
Kana panzvimbo yechiratidzo >
shandisa chigadzirwa >>
, zvino, kunze kwekuti faira iyo iyo yakabuda yemurairo inotungamirwa iripo, iyi faira haizonyorwe. Iyo data ichawedzerwa kumagumo efaira iri.
Zvino ngatitarisei data pipeline processing.
Kubuda kweimwe murairo kunodyiswa mukati mekupinda kweumwe murairo. Zvakafanana nekubatanidza pombi kune imwe
first_command | second_command
: chiratidzo chekutakura, |
, inoshandiswa kutumira kuburitsa kweimwe murairo kune mumwe murairo. Izvo murairo uri kuruboshwe rwechimiro chakatsanangurwa chinotumira kune stdout
, Kuwira mukati stdin
raira kurudyi rwechiratidzo chepombi.
PaLinux, data inogona kuiswa pombi uchishandisa chero chero murairo wakagadzirwa zvakanaka. Zvinowanzotaurwa kuti zvese zviri muLinux ipombi.
Unogona kubatanidza mirairo yakawanda uchishandisa pombi chiratidzo. Zvinoita seizvi:
first_command | second_command | third_command
Paipi yemirairo yakawanda inogona kufananidzwa nepombi
Cherechedza kuti kana murayiro kuruboshwe chiratidzo |
, inoburitsa chimwe chinhu ku stdout
, zvaanoburitsa zvinobva zvangowanikwa se stdin
chikwata chechipiri. Ndiko kuti, zvinozoitika kuti, tichishandisa pombi, isu tiri kubata nekuita kwakafanana kwemirairo. Dzimwe nguva izvi zvinogona kutungamirira kumigumisiro isingatarisirwi. Mashoko pamusoro peizvi anogona kuverengwa
Zvino ngatitaure nezve kuverenga data kubva kumafaira uye nekuaratidza pachiratidziri.
βKuverenga mafaira
head my_file
: inoverenga mitsara kubva pakutanga kwefaira uye inodhinda kune iyo skrini. Iwe haugone kuverenga kwete chete zviri mukati memafaira, asiwo izvo zvinobuda nemirairo mukati stdin
uchishandisa murairo uyu sechikamu chepombi.
tail my_file
: inoverenga mitsara kubva kumagumo efaira. Uyu murairo unogonawo kushandiswa mupombi.
Musoro (musoro) uri pamberi, uye muswe (muswe) uri kumashure
Kana iwe uri kushanda nedata uchishandisa iyo pandas raibhurari, ipapo iyo mirairo head
ΠΈ tail
inofanira kunge yakajairika kwauri. Kana zvisina kudaro, tarisa mufananidzo uri pamusoro, uye iwe unovayeuka nyore nyore.
Funga dzimwe nzira dzekuverenga mafaira, ngatitaure pamusoro pemurairo cat
.
chikwata cat
inogona kudhinda zvirimo mufaira pachiratidziro, kana kubatanidza mafaera akawanda. Izvo zvinoenderana nekuti mangani mafaera anopfuudzwa kune uyu murairo kana adaidzwa.
katsi command
cat my_one_file.txt
: kana faira rimwe chete rapfuudzwa kune uyu rairo, rinoburitsa kwariri stdout
.
Kana iwe ukapa mafaera maviri kana akawanda mafaera, zvino inozvibata zvakasiyana.
cat my_file1.txt my_file2.txt
: wagamuchira akati wandei mafaera sekuisa, uyu murairo unobatanidza zviri mukati mavo uye unoratidza zvakaitika mukati stdout
.
Kana mhedzisiro yefaira concatenation ichida kuchengetwa sefaira nyowani, unogona kushandisa opareta >
:
cat my_file1.txt my_file2.txt > my_new_file.txt
Zvino ngatitaure nezve nzira yekudzima mafaera uye kumisa maitiro.
βKudzima mafaera, kumisa maitiro
rm my_file
: bvisa faira my_file
.
rm -r my_folder
: inodzima folda my_folder
uye mafaera ese nemaforodha arimo. Flag -r
inoratidza kuti murairo uchamhanya mune recursive mode.
Kuti udzivise sisitimu kukumbira kusimbiswa pese panobviswa faira kana folda, shandisa mureza -f
.
kill 012345
: Inomisa iyo yakatarwa yekumhanyisa maitiro, ichipa iyo nguva yekuvharika zvine nyasha.
kill -9 012345
: Inomisa nechisimba iyo yakatarwa yekumhanyisa maitiro. View mureza -s SIGKILL
zvinoreva zvakafanana nemureza -9
.
βTsvaga
Iwe unogona kushandisa mirairo yakasiyana kutsvaga data. Zvikuru sei - grep
, ag
ΠΈ ack
. Ngatitange kuziva kwedu nemirairo iyi ne grep
. Uyu murairo wakaedzwa, wakavimbika, uyo, zvisinei, unononoka kupfuura vamwe uye hausi nyore kushandisa sezvavari.
grep command
grep my_regex my_file
: kutsvaga my_regex
Π² my_file
. Kana machisi awanikwa, tambo yese inodzoswa, pamutambo wega wega. Default my_regex
kubatwa sechiratidzo chenguva dzose.
grep -i my_regex my_file
: Kutsvaga kunoitwa nenzira isina hanya.
grep -v my_regex my_file
: inodzosa mitsara yese isina my_regex
. Flag -v
zvinoreva inversion, inofanana nemushandisi NOT
, inowanikwa mumitauro yakawanda yepurogiramu.
grep -c my_regex my_file
: Inodzosa ruzivo rwehuwandu hwemachisi epatani yakatsvaga inowanikwa mufaira.
grep -R my_regex my_folder
: inoita tsvakiridzo inodzokororwa mumafaira ese ari mune yakatarwa folda uye mumafolda akaiswa mairi.
Zvino ngatitaure nezvechikwata ag
. Akazouya pave paya grep
, inokurumidza, zviri nyore kushanda nayo.
ag command
ag my_regex my_file
: inodzosera ruzivo nezve nhamba dzemitsara, uye mitsetse pachayo, umo machisi akawanikwa aine my_regex
.
ag -i my_regex my_file
: Kutsvaga kunoitwa nenzira isina hanya.
chikwata ag
otomatiki gadzira iyo faira .gitignore
uye isingabatanidzi kubva pane zvakaburitswa izvo zvinowanikwa mumaforodha kana mafaera akanyorwa mufaira iro. Yakanyanya kugadzikana.
ag my_regex my_file -- skip-vcs-ignores
: zviri mukati me otomatiki vhezheni kutonga mafaera (se .gitignore
) haina kuverengerwa mukutsvaga.
Mukuwedzera, kuitira kuudza boka ag
pane nzira dzefaira dzaunoda kusabvisa kubva pakutsvaga, unogona kugadzira faira .agignore
.
Pakutanga kwechikamu chino, takataura murairo ack
. Zvikwata ack
ΠΈ ag
zvakafanana zvikuru, tinogona kutaura kuti ivo 99% vanochinjana. Zvisinei, chikwata ag
inoshanda nekukurumidza, ndosaka ndakaitsanangura.
Zvino ngatitaure nezvekushanda nearchives.
βKuchengeta
tar my_source_directory
: concatenates mafaira kubva folda my_source_directory
mune imwe tarball faira. Mafaira akadaro anobatsira kuendesa seti huru yemafaira kune mumwe munhu.
tar command
Iwo mafaira etarball anogadzirwa nemurairo uyu mafaera ane kuwedzera .tar
(Tepi ARchive). Idi rokuti shoko rokuti "tepi" (tepi) rakavigwa muzita remurairo uye mukuwedzera kwemazita emafaira anogadzirwa kunoratidza kuti murairo uyu wakagara kwenguva yakareba sei.
tar -cf my_file.tar my_source_directory
: inogadzira tarball faira rakanzi my_file.tar
ine folda zviri mukati my_source_directory
. Flag -c
inomirira kuti βsikaβ (kusikwa), uye mureza -f
se "faira" (faira).
Kutora mafaira kubva .tar
-faira, shandisa murairo tar
nemireza -x
("kubvisa", kuburitsa) uye -f
("faira", faira).
tar -xf my_file.tar
: inobvisa mafaira kubva my_file.tar
kune ikozvino kushanda dhairekitori.
Iye zvino ngatitaure nezve nzira yekumanikidza uye decompress .tar
-mafaira.
tar -cfz my_file.tar.gz my_source_directory
: pano uchishandisa mureza -z
("zip", compression algorithm) inoratidza kuti algorithm inofanira kushandiswa kudzvanya mafaera gzip
(GNUzip). Kudzvanywa kwefaira kunochengetedza dhisiki nzvimbo kana uchichengeta mafaera akadaro. Kana mafaira akarongwa, semuenzaniso, kuendeswa kune vamwe vashandisi, izvi zvinobatsira kukurumidza kurodha mafaira akadaro.
Unzip file .tar.gz
unogona kuwedzera mureza -z
kune dhairekitori yemukati yekuraira .tar
-mafaira, atakakurukura pamusoro apa. Zvinoita seizvi:
tar -xfz my_file.tar.gz
Zvinofanira kucherechedzwa kuti chikwata tar
Kune mamwe akawanda anobatsira mireza.
Bash aliases
Bash aliases (anonziwo maaliases kana mapfupiso) akagadzirirwa kugadzira mazita akapfupikiswa emirairo kana kutevedzana kwawo, kushandiswa kwaro panzvimbo yemirairo yenguva dzose kunomhanyisa basa. Kana uine alias bu
, iyo inovanza murairo python setup.py sdist bdist_wheel
, zvino kudaidza murairo uyu, zvakakwana kushandisa irias.
Kuti ugadzire akadaro alias, ingo wedzera murairo unotevera kune faira ~/.bash_profile
:
alias bu="python setup.py sdist bdist_wheel"
Kana system yako isina faira ~/.bash_profile
, ipapo unogona kuzvigadzira iwe pachako uchishandisa murairo touch
. Mushure mekugadzira iyo alias, tangazve iyo terminal, mushure meizvozvo iwe unogona kushandisa iri alias. Muchiitiko ichi, kuiswa kwemavara maviri kunotsiva kupinza kweanopfuura matatu gumi nemaviri mavara emurairo, iyo inoitirwa
Π ~/.bash_profile
unogona kuwedzera ariases kune chero mirairo inowanzo shandiswa.
β Zvabuda
Mune ino positi, takafukidza makumi maviri nembiri akakurumbira mirairo yeBash uye takataura nezve kugadzira mirairo yekuraira. Kana uchifarira nyaya iyi -
Vanodiwa vaverengi! Ndeipi mirairo inobatsira kune vanotanga iwe yaungawedzera kune iyo yakurukurwa munyaya ino?
β
Source: www.habr.com