[bookmarked] Bash don masu farawa: 21 umarni masu amfani

Kayan, fassarar wanda muke bugawa a yau, an yi shi ne don waɗanda suke son sanin layin umarni na Linux. Ƙarfin yin amfani da wannan kayan aiki yadda ya kamata zai iya ajiye lokaci mai yawa. Musamman, zamuyi magana game da Bash harsashi da umarni 21 masu amfani anan. Za mu kuma yi magana game da yadda ake amfani da tutocin umarni da laƙabin Bash don hanzarta buga dogon umarni.

[bookmarked] Bash don masu farawa: 21 umarni masu amfani

Hakanan karanta a cikin shafinmu jerin wallafe-wallafe game da rubutun bash

Sharuɗɗa

Yayin da kuke koyon aiki tare da layin umarni na Linux, zaku ci karo da dabaru da yawa waɗanda ke taimakawa kewayawa. Wasu daga cikinsu, kamar "Linux" da "Unix", ko "shell" da "terminal", wani lokaci suna ruɗe. Bari mu yi magana game da waɗannan da wasu mahimman kalmomi.

Unix sanannen tsarin aiki ne wanda Bell Labs ya haɓaka a cikin 1970s. An rufe lambarta.

Linux shine mafi mashahuri tsarin aiki kamar Unix. Yanzu ana amfani da shi akan na'urori da yawa, gami da kwamfutoci.

m (terminal), ko kuma tashoshi emulator shiri ne da ke ba da dama ga tsarin aiki. Kuna iya buɗe windows tasha masu yawa a lokaci guda.

Harsashi (shell) shiri ne da ke ba ka damar aika umarni da aka rubuta cikin harshe na musamman zuwa tsarin aiki.

Bash yana nufin Bourne Again Shell. Shi ne yaren harsashi da aka fi amfani da shi don mu'amala da tsarin aiki. Hakanan, Bash harsashi shine tsoho akan macOS.

Tsarin layin umarni (Command Line Interface, CLI) hanya ce ta mu’amala tsakanin mutum da kwamfuta, lokacin da mai amfani ke amfani da shi yana shigar da umarni daga maballin, sannan kwamfutar, tana aiwatar da waɗannan umarni, ta nuna saƙonni a cikin sigar rubutu ga mai amfani. Ana amfani da CLI galibi don samun sabbin bayanai game da wasu abubuwa, misali, game da fayiloli, da yin aiki tare da fayiloli. Ya kamata a bambanta ƙirar layin umarni daga ƙirar mai amfani da hoto (GUI), wanda da farko yana amfani da linzamin kwamfuta. Sau da yawa ana kiran layin umarni kawai azaman layin umarni.

Rubutun (script) ƙaramin shiri ne wanda ya ƙunshi jerin umarnin harsashi. Ana rubuta rubutun zuwa fayiloli, ana iya amfani da su akai-akai. Lokacin rubuta rubutun, zaku iya amfani da masu canji, sharadi, madaukai, ayyuka, da sauran fasaloli.

Yanzu da muka rufe mahimman kalmomi, ina so in nuna cewa zan yi amfani da kalmomin "Bash", "shell" da "layin umarni" a musanya a nan, da kuma kalmomin "directory" da "folder".

Standard rafuffuka, wanda za mu yi amfani da shi a nan shi ne madaidaicin shigarwa (daidaitaccen shigarwa, stdin), daidaitaccen fitarwa (daidaitaccen fitarwa, stdout) da daidaitaccen fitowar kuskure (kuskuren daidaitaccen tsari, stderr).

Idan a cikin umarnin misalin da za a bayar a ƙasa, za ku sami wani abu kamar my_whatever - wannan yana nufin cewa wannan guntu yana buƙatar maye gurbin da wani abu na ku. Misali, sunan fayil.

Yanzu, kafin mu ci gaba da nazarin umarnin da aka keɓe wannan kayan, bari mu dubi jerin sunayensu da taƙaitaccen bayaninsu.

21 Bash yayi umarni

▍Samun bayanai

  • man: Nuna jagorar mai amfani (taimako) don umarnin.
  • pwd: yana nuna bayanai game da kundin aiki.
  • ls: yana nuna abubuwan da ke cikin kundin adireshi.
  • ps: Yana ba ku damar duba bayanai game da tafiyar matakai.

▍Maganar tsarin fayil

  • cd: canza kundin aiki.
  • touch: Ƙirƙiri fayil.
  • mkdir: ƙirƙirar kundin adireshi.
  • cp: Kwafi fayil.
  • mv: Matsar ko share fayil.
  • ln: ƙirƙirar hanyar haɗi.

▍ I/O juyar da bututun mai

  • <: turawa stdin.
  • >: turawa stdout.
  • |: bututun fitar da umarni ɗaya zuwa shigar da wani umarni.

▍ Karatun fayiloli

  • head: karanta farkon fayil ɗin.
  • tail: karanta ƙarshen fayil.
  • cat: Karanta fayil kuma buga abinda ke ciki zuwa allon, ko haɗa fayiloli.

▍ Share fayiloli, dakatar da tafiyar matakai

  • rm: Share fayil.
  • kill: dakatar da tsari.

▍Bincika

  • grep: neman bayanai.
  • ag: babban umarni don nema.

▍ Yin ajiya

  • tar: ƙirƙirar ma'ajiyar bayanai da aiki tare da su.

Bari mu yi magana game da waɗannan umarni dalla-dalla.

Cikakken Bayani

Da farko, bari mu magance umarnin, sakamakon wanda aka bayar a cikin tsari stdout. Yawancin lokaci waɗannan sakamakon suna bayyana a cikin taga tasha.

▍Samun bayanai

man command_name: nuna jagorar umarni, watau bayanin taimako.

pwd: nuna hanyar zuwa kundin adireshin aiki na yanzu. A yayin aiki tare da layin umarni, mai amfani sau da yawa yana buƙatar gano ainihin inda yake a cikin tsarin.

ls: nuna abubuwan da ke cikin kundin adireshi. Ana kuma amfani da wannan umarnin sau da yawa.

ls -a: nuna ɓoyayyun fayiloli. tuta a nan -a umarni ls. Yin amfani da tutoci yana taimakawa wajen daidaita halayen umarnin.

ls -l: Nuna cikakken bayani game da fayiloli.

Lura cewa ana iya haɗa tutoci. Misali - kamar haka: ls -al.

ps: Duba tafiyar matakai.

ps -e: Nuna bayanai game da duk matakai masu gudana, ba kawai waɗanda ke da alaƙa da harsashin mai amfani na yanzu ba. Ana amfani da wannan umarni sau da yawa ta wannan sigar.

▍Maganar tsarin fayil

cd my_directory: canza kundin aiki zuwa my_directory. Don matsar da mataki ɗaya a cikin bishiyar directory, yi amfani my_directory hanyar dangi ../.

[bookmarked] Bash don masu farawa: 21 umarni masu amfani
cd umurnin

touch my_file: ƙirƙirar fayil my_file tare da hanyar da aka bayar.

mkdir my_directory: ƙirƙirar babban fayil my_directory tare da hanyar da aka bayar.

mv my_file target_directory: motsa fayil my_file zuwa babban fayil target_directory. Lokacin zayyana jagorar manufa, kuna buƙatar amfani da cikakkiyar hanyar zuwa gare ta (kuma ba gini kamar ../).

tawagar mvHakanan za'a iya amfani dashi don sake suna fayiloli ko manyan fayiloli. Misali, yana iya zama kamar haka:

mv my_old_file_name.jpg my_new_file_name.jpg
cp my_source_file target_directory
: ƙirƙirar kwafin fayil my_source_file kuma saka shi a cikin babban fayil target_directory.

ln -s my_source_file my_target_file: ƙirƙirar hanyar haɗi na alama my_target_file kowane fayil my_source_file. Idan kun canza hanyar haɗin yanar gizon, ainihin fayil ɗin shima zai canza.

Idan fayil my_source_file za a share, to my_target_file zai kasance. Tuta -s umarni ln yana ba ku damar ƙirƙirar hanyoyin haɗin kai don kundayen adireshi.

Yanzu bari muyi magana game da juyawa I/O da bututun mai.

▍ I/O juyar da bututun mai

my_command < my_file: ya maye gurbin daidaitaccen bayanin shigar fayil (stdin) kowane fayil my_file. Wannan na iya zama da amfani idan umarnin yana jiran wasu bayanai daga madannai, kuma an riga an adana wannan bayanan a cikin fayil.

my_command > my_file: yana tura sakamakon umarnin, watau abin da zai shiga stdout da fitarwa zuwa allon, zuwa fayil my_file. Idan fayil my_file babu shi - an halicce shi. Idan fayil ɗin ya wanzu, an sake rubuta shi.

Misali, bayan aiwatar da umarnin ls > my_folder_contents.txt za a ƙirƙiri fayil ɗin rubutu mai ɗauke da jerin abubuwan da ke cikin kundin adireshin aiki na yanzu.

Idan maimakon alamar > yi amfani da ginin >>, to, muddin fayil ɗin da aka tura fitar da umarnin zuwa gare shi ya wanzu, wannan fayil ɗin ba za a sake rubuta shi ba. Za a ƙara bayanan zuwa ƙarshen wannan fayil ɗin.

Yanzu bari mu kalli sarrafa bututun bayanai.

[bookmarked] Bash don masu farawa: 21 umarni masu amfani
Ana ciyar da fitar da umarni ɗaya cikin shigar da wani umarni. Kamar haɗa bututu ɗaya zuwa wani

first_command | second_command: alamar jigilar kaya, |, ana amfani dashi don aika fitar da umarni ɗaya zuwa wani umarni. Abin da umarni a gefen hagu na tsarin da aka kwatanta ya aika zuwa stdout, Fada cikin stdin umarni zuwa dama na alamar bututun.

A Linux, ana iya bututun bayanai ta amfani da kusan kowane ingantaccen umarni. Sau da yawa ana cewa duk abin da ke cikin Linux bututu ne.

Kuna iya sarkar umarni da yawa ta amfani da alamar bututun mai. Ga alama kamar haka:

first_command | second_command | third_command

[bookmarked] Bash don masu farawa: 21 umarni masu amfani
Ana iya kwatanta bututun umarni da yawa da bututun

Lura cewa lokacin da umarnin hagu na alamar |, fitar da wani abu zuwa stdout, abin da ta fitar nan take samuwa kamar stdin ƙungiya ta biyu. Wato, ya zama cewa, ta yin amfani da bututun, muna ma'amala da aiwatar da umarni a layi daya. Wani lokaci wannan na iya haifar da sakamakon da ba a zata ba. Ana iya karanta cikakkun bayanai game da wannan a nan.

Yanzu bari muyi magana game da karanta bayanai daga fayiloli da nuna su akan allo.

▍ Karatun fayiloli

head my_file: karanta layi daga farkon fayil kuma buga su zuwa allon. Kuna iya karanta ba kawai abubuwan da ke cikin fayilolin ba, har ma da abin da umarni ke fitarwa a ciki stdinamfani da wannan umarni a matsayin wani ɓangare na bututun mai.

tail my_file: karanta layi daga ƙarshen fayil ɗin. Hakanan ana iya amfani da wannan umarni a cikin bututun mai.

[bookmarked] Bash don masu farawa: 21 umarni masu amfani
Kai (kai) yana gaba, wutsiya kuma tana baya

Idan kuna aiki tare da bayanai ta amfani da ɗakin karatu na pandas, sannan umarni head и tail ya kamata ku saba da ku. Idan ba haka ba, duba wannan adadi na sama, kuma zaka iya tunawa da su cikin sauƙi.

Yi la'akari da wasu hanyoyi don karanta fayiloli, bari muyi magana game da umarnin cat.

tawagar cat ko dai ya buga abubuwan da ke cikin fayil zuwa allon, ko haɗa fayiloli da yawa. Ya dogara da adadin fayiloli da aka wuce zuwa wannan umarni lokacin da ake kira.

[bookmarked] Bash don masu farawa: 21 umarni masu amfani
umarnin cat

cat my_one_file.txt: Lokacin da fayil ɗaya aka wuce zuwa wannan umarni, yana fitar da shi zuwa stdout.

Idan ka ba shi fayiloli biyu ko fiye da fayiloli, to yana nuna hali daban.

cat my_file1.txt my_file2.txt: Bayan karɓar fayiloli da yawa azaman shigarwa, wannan umarni yana haɗa abubuwan da ke cikin su kuma yana nuna abin da ya faru a ciki stdout.

Idan sakamakon haɗin fayil yana buƙatar adanawa azaman sabon fayil, zaka iya amfani da afareta >:

cat my_file1.txt my_file2.txt > my_new_file.txt

Yanzu bari mu magana game da yadda za a share fayiloli da kuma dakatar da tafiyar matakai.

▍ Share fayiloli, dakatar da tafiyar matakai

rm my_file: share fayil my_file.

rm -r my_folder: yana goge babban fayil my_folder da duk fayiloli da manyan fayilolin da ke cikin su. Tuta -r yana nuna cewa umarnin zai gudana a yanayin maimaitawa.

Don hana tsarin neman tabbaci a duk lokacin da aka share fayil ko babban fayil, yi amfani da tuta -f.

kill 012345: Yana dakatar da ƙayyadadden tsari na gudana, yana ba shi lokaci don rufewa da alheri.

kill -9 012345: Tilas ya ƙare ƙayyadadden tsari na gudana. Duba tuta -s SIGKILL yana nufin daidai da tuta -9.

▍Bincika

Kuna iya amfani da umarni daban-daban don bincika bayanai. Musamman - grep, ag и ack. Bari mu fara saninmu da waɗannan umarni da grep. Wannan umarni ne da aka gwada lokaci, abin dogaro, wanda, duk da haka, yana da hankali fiye da wasu kuma bai dace da amfani kamar yadda suke ba.

[bookmarked] Bash don masu farawa: 21 umarni masu amfani
umurnin grep

grep my_regex my_file: bincike my_regex в my_file. Idan an sami ashana, za a mayar da dukan kirtani, don kowane wasa. Default my_regex bi da shi azaman magana ta yau da kullun.

grep -i my_regex my_file: Ana yin binciken ne ta hanyar da ba ta dace ba.

grep -v my_regex my_file: yana dawo da duk layuka waɗanda basu ƙunshi ba my_regex. Tuta -v yana nufin juyawa, yayi kama da mai aiki NOT, samu a yawancin shirye-shirye harsuna.

grep -c my_regex my_file: Yana dawo da bayanai game da adadin matches da aka samo a cikin fayil ɗin tsarin bincike.

grep -R my_regex my_folder: yana yin bincike akai-akai a cikin duk fayilolin da ke cikin ƙayyadadden babban fayil da kuma cikin manyan fayilolin da ke cikinsa.

Yanzu bari muyi magana game da tawagar ag. Ta zo daga baya grep, yana da sauri, ya fi dacewa don aiki tare da shi.

[bookmarked] Bash don masu farawa: 21 umarni masu amfani
ag umurnin

ag my_regex my_file: yana mayar da bayanai game da lambobin layi, da kuma layin da kansu, wanda aka samo matches tare da my_regex.

ag -i my_regex my_file: Ana yin binciken ne ta hanyar da ba ta dace ba.

tawagar ag sarrafa fayil ta atomatik .gitignore kuma ya keɓe daga fitarwa abin da aka samo a cikin manyan fayiloli ko fayilolin da aka jera a waccan fayil ɗin. Yana da dadi sosai.

ag my_regex my_file -- skip-vcs-ignoresAbun ciki na fayilolin sarrafa sigar atomatik (kamar .gitignore) ba a la'akari da shi a cikin bincike.

Bugu da ƙari, don gaya wa ƙungiyar ag akan waɗanne hanyoyin fayil ɗin da kuke son cirewa daga binciken, zaku iya ƙirƙirar fayil .agignore.

A farkon wannan sashe, mun ambaci umarnin ack. Ƙungiyoyi ack и ag sosai kama, za mu iya cewa su ne 99% musanya. Duk da haka, tawagar ag yana aiki da sauri, shi ya sa na kwatanta shi.

Yanzu bari mu magana game da aiki tare da archives.

▍ Yin ajiya

tar my_source_directory: yana haɗa fayiloli daga babban fayil my_source_directory cikin fayil ɗin kwalta guda ɗaya. Irin waɗannan fayilolin suna da amfani don canja wurin manyan fayiloli zuwa wani.

[bookmarked] Bash don masu farawa: 21 umarni masu amfani
umarnin tar

Fayilolin kwal ɗin da wannan umarni ya haifar fayiloli ne tare da tsawo .tar (Tape Archive). Kasancewar kalmar “kaset” (kaset) tana ɓoye a cikin sunan umarni da tsawo na sunayen fayilolin da ya ƙirƙira yana nuna tsawon lokacin da wannan umarni ya wanzu.

tar -cf my_file.tar my_source_directory: yana ƙirƙirar fayil ɗin kwal mai suna my_file.tar tare da abun ciki na babban fayil my_source_directory. Tuta -c yana nufin “halitta” (halitta), da kuma tuta -f kamar "file" (file).

Don cire fayiloli daga .tar-file, yi amfani da umarnin tar tare da tutoci -x ("cire", hakar) da -f ("file", fayil).

tar -xf my_file.tar: cire fayiloli daga my_file.tar zuwa kundin aiki na yanzu.

Yanzu bari mu magana game da yadda za a damfara da decompress .tar- fayiloli.

tar -cfz my_file.tar.gz my_source_directory: nan ta amfani da tuta -z ("zip", matsawa algorithm) yana nuna cewa ya kamata a yi amfani da algorithm don damfara fayiloli gzip (GNUzip). Matsin fayil yana adana sararin diski lokacin adana irin waɗannan fayilolin. Idan an shirya fayilolin, alal misali, don canjawa wuri zuwa wasu masu amfani, wannan yana ba da gudummawa ga saurin zazzage irin waɗannan fayilolin.

Cire fayil ɗin .tar.gz za ku iya ƙara tuta -z zuwa cire umarnin abun ciki .tar-files, wanda muka tattauna a sama. Ga alama kamar haka:

tar -xfz my_file.tar.gz
Ya kamata a lura cewa tawagar tar Akwai tutoci masu amfani da yawa.

Lakabi Bash

Bash aliases (wanda ake kira aliases ko gajarta) an tsara su ne don ƙirƙirar sunayen umarni na gajarta ko jerin su, wanda amfani da su maimakon umarni na yau da kullun yana hanzarta aiki. Idan kuna da laƙabi bu, wanda ke ɓoye umarnin python setup.py sdist bdist_wheel, to, don kiran wannan umarni, ya isa ya yi amfani da wannan laƙabi.

Don ƙirƙirar irin wannan laƙabi, kawai ƙara umarni mai zuwa zuwa fayil ɗin ~/.bash_profile:

alias bu="python setup.py sdist bdist_wheel"

Idan tsarin ku ba shi da fayil ɗin ~/.bash_profile, to zaku iya ƙirƙirar shi da kanku ta amfani da umarnin touch. Bayan ƙirƙirar laƙabi, sake kunna tashar, bayan haka zaku iya amfani da wannan laƙabin. A wannan yanayin, shigar da haruffa biyu yana maye gurbin shigar da haruffa fiye da dozin uku na umarnin, wanda aka yi niyya don majalisu Fakitin Python.

В ~/.bash_profile za ka iya ƙara laƙabi don kowane umarni da ake yawan amfani da su akai-akai.

▍Sakamako

A cikin wannan sakon, mun rufe shahararrun umarnin Bash 21 kuma mun yi magana game da ƙirƙirar sunayen laƙabi. Idan kuna sha'awar wannan batu - ga shi jerin wallafe-wallafen da aka sadaukar don Bash. Yana da Kuna iya samun sigar pdf na waɗannan wallafe-wallafen. Hakanan, idan kuna son koyon Bash, ku tuna cewa, kamar yadda yake tare da kowane tsarin shirye-shirye, aiwatarwa shine mabuɗin.

Ya ku masu karatu! Waɗanne dokoki ne masu amfani ga masu farawa za ku ƙara wa waɗanda aka tattauna a wannan labarin?

Hakanan karanta a cikin shafinmu jerin wallafe-wallafe game da rubutun bash

[bookmarked] Bash don masu farawa: 21 umarni masu amfani

source: www.habr.com

Add a comment