O mea, o le faaliliuga o loʻo matou lolomiina i aso nei, ua faʻamoemoe mo i latou e manaʻo e faʻatautaia le laina o le Linux. O le iloa lelei o le fa'aogaina o lenei meafaigaluega e fa'asaoina ai le tele o le taimi. Aemaise lava, o le a tatou talanoa e uiga i le Bash shell ma 21 tulafono aoga. O le a matou talanoa foʻi pe faʻapefea ona faʻaogaina fuʻa ma igoa ole Bash e faʻavave ai le taina o faʻamatalaga uumi.
→
Faʻamatalaga
A'o e a'oa'o e fa'aoga le laina fa'atonu Linux, e mafai ona e mauaina le tele o manatu e aoga e fa'atautaia ai. O nisi o latou, e pei o le "Linux" ma le "Unix", poʻo le "shell" ma le "terminal", o nisi taimi e le mautonu. Sei o tatou talanoa e uiga i nei ma isi faaupuga taua.
I le taimi nei ua uma ona matou ufiufi ia faaupuga taua, ou te fia faailoa atu o iinei o le a ou faaaogaina ai faaupuga "Bash", "shell" ma le "line command line", faapea foi ma faaupuga "directory" ma le "folder". ".
Tagavai stdin
), galuega faatino masani, stdout
) ma fa'asologa fa'aletonu tulaga (standard error, stderr
).
Afai i le faʻatonuga faʻataʻitaʻiga o loʻo i lalo e te vaʻai i se mea e pei o my_whatever
- o lona uiga e tatau ona sui lenei vaega i se mea a oe. Mo se faʻataʻitaʻiga, le igoa faila.
Ia, ae tatou te leʻi amata suʻesuʻeina poloaiga o loʻo tuʻuina atu i ai lenei mea, seʻi o tatou tilotilo i la latou lisi ma a latou faʻamatalaga pupuu.
21 Poloaiga a Bash
▍Mauaina faamatalaga
man
: Fa'aali le ta'iala (fesoasoani) mo le fa'atonuga.pwd
: Fa'aalia fa'amatalaga e uiga i le lisi o galuega.ls
: Fa'aali mea o lo'o i totonu o se lisi.ps
: Fa'atagaina oe e va'ai fa'amatalaga e uiga i faiga fa'agasolo.
▍ Fa'atonu faiga faila
cd
: Suia le lisi galue.touch
: Fausia se faila.mkdir
: Fausia se lisi.cp
: Kopi se faila.mv
: Aveese pe tape se faila.ln
: Fausia se so'oga.
▍I/O redirection ma paipa
<
: toe faasinostdin
.>
: toe faasinostdout
.|
: Pipa le galuega faatino o le tasi poloaiga i le tuuina atu o le isi poloaiga.
▍ Faitau faila
head
: Faitau le amataga o le faila.tail
: Faitau pito o le faila.cat
: Faitau se faila ma faʻaalia mea o loʻo i luga o le lau pe faʻapipiʻi faila.
▍Tapeina faila, taofi faiga
rm
: Aveese le faila.kill
: Taofi le faagasologa.
▍Su'esu'e
grep
: saili mo faamatalaga.ag
: fa'atonuga su'esu'e.
▍Fa'amaumauga
tar
: fatuina o faamaumauga ma galulue faatasi ma i latou.
Sei o tatou talanoa atili e uiga i nei poloaiga.
Auiliiliga a le au
Muamua, se'i o tatou va'ai i fa'atonuga o lo'o fa'aalia i'uga i le fomu stdout
. E masani ona aliali mai nei fa'ai'uga ile fa'amalama fa'amalama.
▍Mauaina faamatalaga
man command_name
: galuega faatino o le tusi lesona, o lona uiga, faʻamatalaga faʻamatalaga.
pwd
: Fa'aali le ala i le lisi galue o lo'o iai nei. Pe a galue ma le laina o le poloaiga, e masani ona manaʻomia e le tagata faʻaoga le mea tonu o loʻo i ai i totonu o le polokalama.
ls
: Fa'aali mea o lo'o i totonu o le fa'atonuga. O lenei poloaiga e faʻaaogaina soo.
ls -a
: Fa'aali faila natia. O lo'o fa'aaogaina le fu'a iinei -a
poloaʻiga ls
. O le fa'aogaina o fu'a e fesoasoani e fa'avasega le amio o fa'atonuga.
ls -l
: Fa'aali fa'amatalaga auiliili e uiga i faila.
Faamolemole ia matau e mafai ona tuufaatasia fu'a. Mo se faʻataʻitaʻiga, pei o lenei: ls -al
.
ps
: Va'ai faiga fa'agasolo.
ps -e
: Fa'aalia fa'amatalaga e uiga i faiga fa'agasolo uma, ae le na'o mea e feso'ota'i ma le atigi o lo'o iai nei. O lenei poloaiga e masani ona faʻaaogaina i lenei fomu.
▍ Fa'atonu faiga faila
cd my_directory
: sui le lisi galue i my_directory
. Ina ia siitia le tasi tulaga maualuga i le la'au fa'atonu, fa'aoga my_directory
ala fa'atatau ../
.
cd poloaiga
touch my_file
: fai faila my_file
i luga o se ala ua tuuina atu.
mkdir my_directory
: Fausia se faila my_directory
i luga o se ala ua tuuina atu.
mv my_file target_directory
: siitia faila my_file
i faila target_directory
. Pe a faʻamaoti le lisi autu, e tatau ona e faʻaogaina le auala atoatoa i ai (ae le o se fausiaina pei ../
).
'au mv
, e le gata i lea, e mafai ona faʻaaoga e toe faʻaigoaina faila poʻo faila. Mo se faʻataʻitaʻiga, atonu e pei o lenei:
mv my_old_file_name.jpg my_new_file_name.jpg
: Fausia se kopi o le faila
cp my_source_file target_directorymy_source_file
ma tuu i totonu o se faila target_directory
.
ln -s my_source_file my_target_file
: Fausia se so'oga fa'atusa my_target_file
i faila my_source_file
. Afai e te suia le sootaga, o le a suia foi le faila faila.
Afai o le faila my_source_file
o le a tapeina, ona my_target_file
o le a tumau. Fu'a -s
poloaʻiga ln
fa'atagaina oe e fai so'oga mo fa'atonuga.
Sei o tatou talanoa e uiga i le I/O redirection ma pipelines.
▍I/O redirection ma paipa
my_command < my_file
: sui le au faila faila (stdin
) i le faila my_file
. E mafai ona aoga lenei mea pe a manaʻomia e le faʻatonuga se faʻaoga mai le piano, ma o nei faʻamatalaga o loʻo teuina muamua i se faila.
my_command > my_file
: toe faʻafeiloaʻi iʻuga o le poloaiga, o lona uiga, o le a le mea e masani ona iʻu i totonu stdout
ma faʻaalia i luga o le lau, i se faila my_file
. Afai o le faila my_file
e le o iai - ua faia. Afai e iai le faila, ua toe tusi.
Mo se faʻataʻitaʻiga, pe a uma ona faʻatinoina le faʻatonuga ls > my_folder_contents.txt
o le a faia se faila faila o loʻo i ai se lisi o mea o loʻo i totonu o le lisi galue o loʻo iai nei.
Afai nai lo le faailoga >
faaaoga lelei le mamanu >>
, o lea, pe a fai o le faila lea e toe faʻafeiloaʻi ai le faʻatonuga o loʻo i ai, o lenei faila o le a le toe tusiina. O faʻamatalaga o le a faʻapipiʻiina i le pito o lenei faila.
Se'i o tatou va'ai i le fa'agaioiina o laina paipa.
O le a le mea o lo'o faia e le tasi poloaiga e fafaga i le isi fa'atonuga. E pei o le sosooina o le tasi paipa i le isi
first_command | second_command
: fa'ailoga avefe'au, |
, e faʻaaogaina e lafo ai faʻaiʻuga o le tasi poloaiga i le isi poloaiga. O le a le fa'atonuga o lo'o tu i le itu agavale o le fausaga fa'amatalaina e lafo i stdout
, Pau i totonu stdin
poloaiga, lea e tu i le itu taumatau o le faailoga conveyor.
I Linux, e mafai ona faia faʻamatalaga pipelining e toetoe lava o soʻo se faʻatonuga lelei. E masani ona fai mai o mea uma i Linux o se paipa.
E mafai ona e fa'aogaina le fa'ailoga o le conveyor e filifili fa'atasi ai le tele o fa'atonuga. E pei o lenei:
first_command | second_command | third_command
O se paipa o le tele o poloaiga e mafai ona faʻatusatusa i se paipa
Faamolemole ia matau o le taimi o le poloaiga i le agavale o le faailoga |
, e maua ai se mea e stdout
, o mea na te faia e maua vave e pei o stdin
'au lona lua. O lona uiga, e foliga mai pe a faʻaaogaina se paipa, o loʻo tatou feagai ma le faʻatinoina tutusa o poloaiga. O nisi taimi e mafai ona oo atu ai i ni taunuuga e lei faamoemoeina. E mafai ona e faitau atili e uiga i lenei mea
Sei o tatou talanoa e uiga i le faitauina o faʻamatalaga mai faila ma faʻaalia i luga o le lau.
▍ Faitau faila
head my_file
: Faitau laina mai le amataga o le faila ma faʻaalia i luga o le lau. E mafai ona e faitau e le gata i mea o loʻo i totonu o faila, ae faʻapea foʻi ma mea e tuʻuina atu i ai poloaiga stdin
fa'aogaina lenei fa'atonuga o se elemene paipa.
tail my_file
: Faitau laina mai le pito o le faila. O lenei poloaiga e mafai foi ona faʻaaogaina i se paipa.
O le ulu (ulu) o loʻo i luma, ma le siʻusiʻu (siʻusiʻu) i tua
Afai o loʻo e galue ma faʻamatalaga e faʻaaoga ai le faletusi pandas, ona faʻatonuina lea head
и tail
e tatau ona e masani ai. Afai e le o le tulaga lea, vaʻai i le ata o loʻo i luga ma o le a faigofie ona e manatuaina.
Sei o tatou tilotilo i isi auala e faitau ai faila, talanoa e uiga i le poloaiga cat
.
au cat
pe fa'aalia mea o lo'o i totonu o se faila i luga o le lau, pe fa'apipi'i faila e tele. E fa'alagolago i le tele o faila e tu'uina atu i lenei fa'atonuga pe a vala'au.
fa'atonuga pusi
cat my_one_file.txt
: A tuʻuina atu lenei faʻatonuga se faila se tasi, e faʻaalia i totonu stdout
.
Afai e te tu'uina atu i ai faila e lua pe sili atu fo'i faila, ona ese lea o le amio.
cat my_file1.txt my_file2.txt
: i le mauaina o le tele o faila e fai ma faʻaoga, o lenei poloaiga o le a tuʻufaʻatasia a latou mea ma mea e maua mai i totonu stdout
.
Afai e manaʻomia le faʻasaoina o le faʻasologa o le faila o se faila fou, e mafai ona e faʻaogaina le faʻaoga >
:
cat my_file1.txt my_file2.txt > my_new_file.txt
Se'i o tatou talanoa nei pe fa'afefea ona tape faila ma taofi faiga.
▍Tapeina faila, taofi faiga
rm my_file
: tapeina se faila my_file
.
rm -r my_folder
: tapeina se faila my_folder
ma faila uma ma faila o loo i ai. Fu'a -r
o lo'o ta'u mai ai o le fa'atonuga o le a galue i le faiga toe fa'afo'i.
Ina ia taofia le faiga mai le fesili mo se faʻamaoniga i taimi uma e te tapeina ai se faila poʻo se faila, faʻaaoga le fuʻa -f
.
kill 012345
: Taofi le faagasologa o le tamo'e ma'oti, tu'u le taimi e tapuni ma le alofa.
kill -9 012345
: Fa'amuta fa'amalosi le fa'agasolo fa'atonu. Fu'a o ituaiga -s SIGKILL
o lona uiga e tutusa ma le fu’a -9
.
▍Su'esu'e
E mafai ona e fa'aogaina tulafono eseese e su'e ai fa'amaumauga. Ae faapito tonu lava - grep
, ag
и ack
. Se'i amata la tatou masani i 'au nei ma grep
. O se faʻatonuga faʻataʻitaʻi taimi, faʻatuatuaina, lea, e ui i lea, e sili atu lemu nai lo isi ma e le faigofie ona faʻaoga e pei ona i ai.
grep poloaiga
grep my_regex my_file
: faia se sailiga my_regex
в my_file
. Afai e maua se fa'atusa, e toe fa'afo'i le manoa atoa mo ta'aloga ta'itasi. Fa'atonu my_regex
e fa'atatauina o se fa'aaliga masani.
grep -i my_regex my_file
: O le su'esu'ega o lo'o fa'atinoina i se tulaga fa'aletonu.
grep -v my_regex my_file
: toe faafoi atu laina uma e le o iai my_regex
. Fu'a -v
o lona uiga feliuliua'i, e pei o le tagata fa'afoe NOT
, e maua i le tele o gagana polokalame.
grep -c my_regex my_file
: Fa'afo'i fa'amatalaga e uiga i le numera o fa'atusa i le mamanu su'esu'e o lo'o maua i le faila.
grep -R my_regex my_folder
: Fa'atino se su'esu'ega fa'asolosolo i faila uma o lo'o i totonu o se pusa tu'ufa'atasi ma i totonu o faila faila i totonu.
Se'i o tatou talanoa nei e uiga i le 'au ag
. Na sau o ia mulimuli ane grep
, e televave ma sili atu ona faigofie e galue ai.
ag poloaiga
ag my_regex my_file
: toe faafoi faʻamatalaga e uiga i numera laina, ma laina lava ia, lea na maua ai faʻatusatusaga my_regex
.
ag -i my_regex my_file
: O le su'esu'ega o lo'o fa'atinoina i se tulaga fa'aletonu.
au ag
fa'agasolo otometi le faila .gitignore
ma e le aofia ai mai le gaioiga mea o loʻo maua i totonu o faila poʻo faila o loʻo lisiina i lena faila. E matua mafanafana lava.
ag my_regex my_file -- skip-vcs-ignores
: mea o lo'o i totonu o faila otometi fa'atonu faiga fa'atonu (pei .gitignore
) e le amanaia pe a su'e.
E le gata i lea, ina ia taʻu atu le poloaiga ag
e fuafua po o fea ala faila e manaʻomia ona faʻateʻaina mai le sailiga, e mafai ona e fatuina se faila .agignore
.
I le amataga o lenei vaega sa matou taʻua le poloaiga ack
. 'Au ack
и ag
e talitutusa lava, e mafai ona tatou fai atu e 99% e mafai ona fesuiaʻi. Peitai, o le au ag
galue vave, o le mea lea na ou faamatalaina ai.
Se'i o tatou talanoa nei e uiga i le galue i fa'amaumauga.
▍Fa'amaumauga
tar my_source_directory
: tu'ufa'atasia faila mai se faila my_source_directory
i totonu o le tasi faila tarball. O ia faila e faigofie ona faʻaoga ina ia mafai ai ona faʻafeiloaʻi seti tele o faila i se tasi.
poloaiga ta
O faila tarball na faia e lenei poloaiga o faila ma le faʻaopoopoga .tar
(Tape ARchive). O le mea moni o le upu "tape" o loʻo natia i le igoa o le poloaiga ma le faʻaopoopoga o igoa o faila na te fatuina e faʻaalia ai le umi na i ai lenei poloaiga.
tar -cf my_file.tar my_source_directory
: fatuina se faila tarball e igoa my_file.tar
ma mea o lo'o i totonu o le faila my_source_directory
. Fu'a -c
e tu mo le “faia”, ma le fu’a -f
pei o le "faila" (faila).
E aveese mai faila o loʻo i totonu .tar
-faila, o loʻo faʻaaogaina le poloaiga tar
ma fu'a -x
(“su'i”, fa'aputuga) ma -f
(“faila”, faila).
tar -xf my_file.tar
: aveese mai faila mai my_file.tar
i le tusi faigaluega o lo'o iai nei.
Se'i o tatou talanoa nei pe fa'afefea ona compress ma decompress .tar
- faila.
tar -cfz my_file.tar.gz my_source_directory
: iinei, faʻaaogaina se fuʻa -z
("zip", compression algorithm) o loʻo faʻaalia ai e tatau ona faʻaoga le algorithm e faʻapipiʻi faila gzip
(GNU zip). Fa'apipi'i faila e mafai ai ona e fa'asaoina le avanoa o le disk pe a teu faila fa'apea. Afai e fuafua faila, mo se faʻataʻitaʻiga, e tuʻuina atu i isi tagata faʻaoga, e fesoasoani lea e sii vave ai ia faila.
Tatala faila .tar.gz
e te mafaia i le fa'aopoopoina o se fu'a -z
i le fa'atonuga o le fa'aosoina o mea .tar
- faila, lea na matou talanoaina i luga. E pei o lenei:
tar -xfz my_file.tar.gz
E tatau ona maitauina o le 'au tar
E tele atu fu'a aoga.
Bash aliases
Bash aliases (e taʻua foi o aliases poʻo faʻapuupuuga) ua mamanuina e fatu ai igoa faʻapuupuu o poloaiga poʻo latou faʻasologa, o le faʻaaogaina nai lo tulafono masani e faʻavavevave ai galuega. Afai o oe, fa'apea, e iai sau fa'aigoa bu
, i tua o loo natia ai le poloaiga python setup.py sdist bdist_wheel
, ona taʻua lea o lenei poloaiga ua lava le faʻaaogaina o lenei igoa.
Ina ia fatuina sea igoa, naʻo le faʻaopoopoina o le poloaiga lenei i le faila ~/.bash_profile
:
alias bu="python setup.py sdist bdist_wheel"
Afai e leai se faila i lau polokalama ~/.bash_profile
, ona mafai lea ona e fatuina oe lava e faʻaaoga le poloaiga touch
. A maeʻa ona faia se igoa, toe amata le laina, a maeʻa ona e faʻaogaina lea igoa. I lenei tulaga, o le ulufale i ni mataitusi se lua e suitulaga i le ulufale atu i le sili atu ma le tolu taseni mataitusi o le poloaiga, lea ua faamoemoe mo
В ~/.bash_profile
E mafai ona e fa'aopoopoina igoa fa'aigoa mo so'o se fa'atonuga e fa'aaoga soo.
▍I'uga
I lenei tusiga, na matou vaʻavaʻai i le 21 lauiloa Bash commands ma talanoa e uiga i le fatuina o igoa igoa. Afai e te fiafia i lenei mataupu -
Lau faitau le au faitau! O a faʻatonuga e te faʻaopoopoina i latou o loʻo aofia i lenei tusiga e aoga mo tagata amata e iloa?
→
puna: www.habr.com