Shell, Bash uye zvinyorwa: Zvese nezveShell Scripting.

Mune uno mutsva mukana (Kupinda # 8) about "Dzidza Shell Scripting" isu tichazotarisa zvakanyanya padzidziso pane kudzidzira. ndiko kuti, hatizoisa kana kudzidza kodhi kana kuisa yakatarwa software (pasuru), asi isu tichaongorora kuti chii nyika Shell Kuverenga kutaura nemazvo, kuburikidza nemhinduro kumibvunzo diki asi yakanangana, iyo inoratidzwa pazasi, kujekesa kusvika zvino zvakawanda zvezvakadzidziswa, izvo zvisingarevi zvakanangana nekodhi yemukati yakarongedzwa:

Shell Kuverenga

Chii chinonzi Shell muGNU / Linux Inoshanda Sisitimu?

Shell iro muchiSpanish rinoreva CONCHA (goko, chifukidzo, chengetedzo). Yakaiswa izwi iri muKushandisa Systems inoreva muturikiri wemirairo yeiyo Inoshanda Sisitimu. Kazhinji, iri yepamusoro-yekuita zvinyorwa zvinyorwa, zvinoratidzwa muchimiro cheTerminal (Console) uye zvinonyanya kushandiswa munzvimbo nhatu dzinokosha dzebasa:

1.- Manage iyo OS,
2.- Mhanya kunyorera uye wirirana navo, uye
3.- Shanda seyakakosha programming nharaunda.

Mazhinji SO, GNU / Linux ivo vachiri vakanyatso chengetedzwa nekugadzirisa avo ekumisikidza mafaira, kuburikidza neTerminal. Semutemo wakazara, izvi zviri munzira yekuenda: «/ etc ", uye mukati medzimwe madhairekitori eimwe neimwe application Semuenzaniso, iyo chirongwa Lilo (iyo inomiririra Linux Loader) yakagadzirirwa nekugadzirisa iyo faira faira iripo uye inonzi as "/Etc/lilo/fire.conf". Panyaya yezvirongwa (zvinoshandiswa), izvi zvinotangwa (zvakaitwa / zvakaitwa) nekunyora zita revanogoneka, kana ikawanikwa munzira (default nzira) yezvose zvinogoneka, sezvazvinowanzoitika "/ Usr / bin" , kana nekunyora zita rezvaizoitiswa zvakatangira na: ./, kubva kudhairekitori kwavanowanikwa.

Zvese izvi zvinozivikanwa kune chero mushandisi weShell. Zvisinei, hazvizivikanwe zvakanyanya uye kukosheswa kugona kwayo senzvimbo yekuronga. Zvinyorwa (zvirongwa) zvakagadzirwa muShell hazvidi kunyorwa. Iyo Shell inovadudzira mutsetse netambo. Naizvozvo, aya anozivikanwa kana kutumidzwa saShells zvinyorwa, uye anogona kubva pamirairo yakapfava kusvika kune yakaoma nhevedzano yemirairo yekutanga OS pachayo. vane syntax yakachena (kuvaka, kuraira) (pachena), ichivaita nzvimbo yakanaka yekutanga kuti vatange munyika yehurongwa.

Chii chinonzi Shell Scripting?

Ndiyo hunyanzvi (hunyanzvi / hunyanzvi) hwekugadzira nekugadzira Chinyorwa (task automation faira) uchishandisa Shell (zvirinani) yeiyo Inoshanda Sisitimu, kana Chinyorwa Mhariri (Graphic kana Terminal). Iyi mhando yemutauro wekuronga uyo unowanzo dudzirwa. Ndokunge, nepo zvirongwa zvakawanda zvichinyorwa (encoded), nekuti zvinoshandurwa zvachose kuita yakatarwa (yakakosha) kodhi vasati vaurayiwa (kuumbiridza maitiro), chinyorwa cheShell chinoramba chiri muchimiro chayo chepakutanga (kodhi yacho zvinyorwa zvinyorwa) uye zviri muturikiri wakadudzirwa nemirairo nguva dzese pavanourayiwa. Kunyangwe zvichikwanisika kuti zvinyorwa zvacho zvinogona kuumbika futi, kunyange zvisiri zvakajairwa.

Ndeapi maitiro ehurongwa hwakavakirwa pachirongwa pasi peShell Scripting?

1.- Izvo zviri nyore kunyora (chirongwa), asi nemari yepamusoro yekugadzirisa kana yaurayiwa.

2.- Ivo vanoshandisa vaturikiri pachinzvimbo chemakomputa kumhanya

3.- Ivo vane hukama hwekutaurirana nezvinhu zvakanyorwa mune mimwe mitauro yekuronga.

4.- Mafaira ane iwo anochengetwa senge akajeka zvinyorwa.

5.- Iyo yekupedzisira dhizaini (kodhi) inowanzo kuve idiki pane izvo zvingave zvakaenzana mumutauro wakarongwa wechirongwa.

Ndeapi marudzi akanyanya kufarirwa emitauro pasi peShell Scripting?

1.- Basa uye mutauro wekutonga kwegobhu:

a) cmd.exe (Windows NT, Windows CE, OS / 2),
b) COMMAND.COM (DOS, Windows 9x),
c), csh, Bhash, AppleScript, sh,
d) JScript kuburikidza neWindows script Host,
e) VBScript kuburikidza neWindows Script Host,
f) REXX, pakati pevamwe vakawanda.

2.- GUI Chinyorwa (Macros Mitauro):

a) AutoHotkey,
b) AutoIt,
c) Tarisira,
d) Automator, pakati pevamwe.

3.- Kunyora mutauro wezvimwe zvikumbiro:

a) ActionScript muFlash,
b) MATLAB,
c) mIRC chinyorwa,
d) QuakeC, pakati pevamwe.

4.- Webhu chirongwa (chemasimba mapeji):

a) Padivi revavha:

- PHP,
- ASP (Anoshanda Server Mapeji),
- JavaServer Mapeji,
- ColdFusion,
- IPTSCRAE,
- Lasso,
- MIVA Chinyorwa,
- SMX,
- XSLT, pakati pevamwe.

b) Padivi remutengi:

- JavaScript,
- JScript,
- VBScript,
- Tcl, pakati pevamwe.

5.- Kugadziriswa kwemitauro mitauro:

- AWK,
- Perl,
- Nyota,
- XSLT,
- Bash, pakati pevamwe.

6.- General chinangwa chine simba mitauro:

- APL,
- Boo,
- Dylan,
- Ferite,
- Groovy,
- IO,
- Lisp,
- Lua,
- MUMPS (M),
- NewLISP,
- Nuva,
- Perl,
- PHP,
- Python,
- Ruby,
- Chirongwa,
- Kanyaya kadiki,
- SuperCard,
- Tcl,
- Revolution, pakati pevamwe.

Chii chinonzi Bash muGNU / Linux?

Iyo chirongwa chekomputa chine basa rekududzira maodha. Izvo zvinoenderana ne Unix goko uye inotsigira POSIX. Yakanga yakanyorerwa chirongwa cheGNU uye ndiyo default Shell yezvakawanda zvekuparadzira Linux.

Chii chinonzi Shell script muGNU / Linux?

Iyo Shell Zvinyorwa zvinobatsira zvakanyanya. Iri izano rakanaka kunyora izvo zvido zvatinazvo uye nekugadzirisa zvinyorwa zvinoita basa iri kwatiri. Parizvino, inguva yekuzvibvunza kuti chii chaizvo script. Iyo faira yemavara, iine akateedzana emirairo yeShell, inoitwa nehurongwa zvakarongeka, kubva kumusoro kusvika pasi. Kuti uzvigadzirise, unongoda chete mhariri yemavara, senge Emacs, Vi, Nano, pakati pezvakawanda zviripo. Ivo vanochengetwa ne ".sh" yekuwedzera (kana isina iyo, mune dzimwe nguva) uye inomhanya kubva kuShell vachishandisa rairo: sh script zita.sh. Zvinyorwa zvinozvibata nenzira imwecheteyo seShell mirairo.

Maitiro ekudzidzisa andinoshandisa ini pachangu "Dzidza Shell Scripting" Izvo zvinoshanda uye zvakanangana, ndiko kuti, kuongorora rakazara rinoshanda Gwaro, kuora, kuidzidza mutongo nemutsara, mutsetse netambo, kuraira nekuraira, kusiyanisa nemusiyano, kusvika iwe unzwisise mashandiro anoita chinhu chimwe nechimwe uye mashandiro ainoita mune kodhi general. Izvo zvakaita Reverse Injiniya kana Software Kuongororazve. Zvese izvi kuitira kukodzera ruzivo, kurunatsurudza (kurigonesa) uye kugovana naro, kuitira pamwe mubatsiro uye kutarisirwa zvirinani uye kugadziridzwa kwemahara Ekushandisa Masystem.

Inomhanya sei uye inoshanda muGNU / Linux Shell?

Nhanho yekutanga mukushanda neShell ndeyekumhanyisa goko. Izvo zvinoita sekutenda kune chikonzero chekuve. Mune mamwe ekupedzisira-mushandisi akanangana neGUU / Linux kugovera, iro ganda rakavanzwa. Kazhinji, inonzi: Konsole, Terminal, X Terminal, kana chimwe chinhu chakafanana. Imwe sarudzo ndeye kushandisa chaiyo koni. Uchishandisa: Ctrl + Alt + f1, kana f2, kana f3 kusvika f7 kana f8, zvinoenderana neGNU / Linux Distribution yaunoshandisa. Iyo inonyanyo shandiswa Shell muGNU / Linux ndiBash, kunyangwe paine vamwe, vakadai ksh kana C Shell. Mune yangu kesi, kunyanya kune angu zvinyorwa ini ndinoshandisa Bash Shell.

Kupiwa Chinyorwa chakaitwa muBash Shell inonzi hello_world.sh zvinotevera zvinogona kutsanangurwa:

Zviripo:

#! / bin / bash
echo hello nyika

Kuparara:

Mutsara wekutanga weiyo script
#! / bin / bash

Inoratidza chirongwa icho script chinofanira kumhanya. Kana chirongwa chisingakwanise kuwanikwa, kukanganisa kuchaitika.

Mutsara wechipiri wechinyorwa
echo hello nyika

Dzokorora iyo echo yekuraira neHerodhi World nharo, zvichikonzera kuti varatidzwe pachiratidziri.

Kuuraya: Tinogona kumhanyisa script nenzira mbiri

Kukumbira muturikiri kuti amhanyisa script:
# bash hello_world.sh

Inogona zvakare kumhanya se:
# sh hello_world.sh

Asi sezvo yako chaiyo Shell isina kukumbirwa, inogona kushanda hafu. Sezvineiwo, iro Shell rakakumbirwa mumutsara wekutanga ndiro rinoshandiswa kuzviita.

Iwe unogona zvakare kumhanyisa iyo script nenzira inotevera
# ./hello_world.sh

Cherechedza: ./ inoratidza kumhanya kubva kudhairekitori razvino.

Izvo zvinoramba zvichiongororwa ndiyo kodhi iwe yaunopinza mairi. Ndinovimba kuti senguva dzose iwe urikufarira (zvimwe kupfuura vamwe, zvinoenderana nedzidzo uye ruzivo rwezvinodiwa) ino nhevedzano ye Shell Kuverenga.

Pane zvakawanda zvakanaka zvinongedzo pamusoro penyaya iyi pawebhu, asi ini ndinokusiira iwe uyu mudiki dhairekisheni iri pano apa DesdeLinux.com Uye izvi zvimwe Kunze kwekutungamira.

Kusvikira inotevera posvo!


Siya yako yekutaura

Your kero e havazobvumirwi ichibudiswa. Raida minda anozivikanwa ne *

*

*

  1. Inotarisira iyo data: Miguel Ángel Gatón
  2. Chinangwa cheiyo data: Kudzora SPAM, manejimendi manejimendi.
  3. Legitimation: Kubvuma kwako
  4. Kutaurirana kwedata
  5. Dhata yekuchengetedza: Dhatabhesi inobatwa neOccentus Networks (EU)
  6. Kodzero: Panguva ipi neipi iwe unogona kudzora, kupora uye kudzima ruzivo rwako

  1.   d4ny akadaro

    Lilo .. Linux Loader .. iyo yakasara yakanaka kwazvo info .. ndatenda .. salu2 d4ny.-

  2.   Jose Albert akadaro

    Kwazisai vese avo vari kutevera iyo Kosi yepamhepo ye "Dzidza Shell Kunyora" munguva pfupi iri kutevera isu tichaenderera nemamwe zvinyorwa zvekutanga kuti tirambe tichiisa ruzivo uye tichiramba tichiwadzana kune vese.

    Ndinovimba unogara wakatarwa nekuti munguva pfupi inotevera ndichatanga nemacode epamberi asi akafumurwa nenzira inonzwisisika kunyangwe iri yakaoma.

    Rangarira kuti neShell Scripting iwe unogona kuita zvinhu zvakawanda zvakaomarara zviri muchinjika-chikuva (Akasiyana maDistros) uchishandisa madiki mafaira. Ini ndinokusiira ichi chidiki screencast chechimwe chinhu chandichakudzidzisa iwe munguva pfupi, kune avo vanoramba vachiona kosi, uye kuti ne50Kb chete inovimbisa zvakawanda! Uye inongova hafu yezvingaitwe neShell Scripting.

    LPI-SB8 Kwayedza ScreenCast (LINUX POST INSTALL - SCRIPT BICENTENARIO 8.0.0)
    (lpi_sb8_adaptation-audiovisual_2016.sh / 43Kb)

    Ona Screencast: https://www.youtube.com/watch?v=cWpVQcbgCyY

    1.    Alberto cardona akadaro

      Mhoro, mupiro wako unoshamisa, chaizvo maita basa kwazvo !!
      Ndine kusahadzika zvishoma, ndinogona kuronga mugadziri ne bash?
      Kana kuti ingangoita lexical analyzer?
      ane simba iroro?

  3.   Jose Albert akadaro

    Kwazisai vese avo vari kutevera iyo Kosi yepamhepo ye "Dzidza Shell Kunyora" munguva pfupi iri kutevera isu tichaenderera nemamwe magwaro ekutanga kuti tirambe tichiisa ruzivo uye tichiramba tichiwadzana kune vese. Ndinovimba unogara wakatarwa nekuti munguva pfupi inotevera ndichatanga nemacode epamberi asi akafumurwa nenzira inonzwisisika kunyangwe iri yakaoma.

    Rangarira kuti neShell Scripting iwe unogona kuita zvinhu zvakawanda zvakaomarara zviri muchinjika-chikuva (Akasiyana maDistros) uchishandisa madiki mafaira. Ini ndinokusiira ichi chidiki screencast chechimwe chinhu chandichakudzidzisa iwe munguva pfupi, kune avo vanoramba vachiona kosi, uye kuti ne50Kb chete inovimbisa zvakawanda! Uye inongova hafu yezvingaitwe neShell Scripting.

    LPI-SB8 Kwayedza ScreenCast (LINUX POST INSTALL - SCRIPT BICENTENARIO 8.0.0)
    (lpi_sb8_adaptation-audiovisual_2016.sh / 43Kb)

    Ona Screencast: https://www.youtube.com/watch?v=cWpVQcbgCyY

  4.   Alberto akadaro

    Mhoro Jose,
    Kutanga ndatenda nekugovana ruzivo rwako. Zvinyorwa zvako zvinonakidza kwazvo.

    Zvinhu zviviri, ndinofunga zvakakosha kwazvo kushandisa makotesheni maviri "Halo Nyika" uye kuva yakachena kuburitsa yedu script nekubuda 0

  5.   Jose Albert akadaro

    Kutenda nemipiro yako, mune inotevera script iwe uchaona iko kushandisa kubuda 0, break, nevamwe!

  6.   Willarman akadaro

    Thanks.
    Inonakidza kwazvo, unoita kuti iratidzike senge yakapusa; Zvino, ini ndaona kuti ini handigone kuronga muLinux nekron kana pa, kuvhara / kusimisa / kubhabhatidza, zvichizotevera otomatiki kushandisa iyo rtc wake raira, ini handizive kana chinyorwa chine iwo murairo chingabatsira, kana ivo ingatevedzera cron uye t pasina kuita chero chinhu, kana izvo hazvigone kuitwa, kana zvinoitwa zvakasiyana, kana ini ndine shungu kwazvo, asi muWindows zviri nyore kuzviita. Ini ndoda kuenda kuLinux, asi zvakakosha kwandiri kuronga kudzima / kusimisa / hibernate uye kuti PC itange yega. Zvido.

  7.   Jose Albert akadaro
  8.   Willarman akadaro

    Ndatenda, ndichavaverenga zvakakwana, chimwe chinhu chingandibatsire. Kwaziso.

  9.   Edward Cuomo akadaro

    Imwe nguva yapfuura ini ndakatanga chirongwa, icho chandinofunga ndechimwe chemhando. Iyo prototype yeiyo Framewok Bash. Izvo zvinongoda Bhash pane system.
    Kana mumwe munhu achifarira, vanokokwa kuti vayedze uye vashande pamwe!

    https://github.com/reduardo7/bashx

    Ndinokutendai!

    1.    dzvinyu akadaro

      Wadiwa Eduardo, ndinofunga ipurojekiti huru, pamwe unogona kuigovana nenharaunda yese desdelinux, yeuka kuti iwe unogona kuburitsa chinyorwa nezve purojekiti yako pawebhusaiti yedu, kana iwe usingazivi kuti ungazviita sei ndinokurudzira kuverenga https://blog.desdelinux.net/guia-redactores-editores/ aripi maitiro akanakisa ekugadzira zvinyorwa mukati desdelinux uye nzira inofanira kuitwa. Pamwe kunharaunda zvakanaka kutanga waziva nezve mabhenefiti epurojekiti yako uye chechipiri kudzidza maitiro emhando iyi yezvinhu. Tinokukoka iwe uye tinokoka vamwe kuti vagovere mapurojekiti avo nesu uye nenharaunda yakakura yakatipoteredza.

  10.   Miguel Urosa Ruiz chigadziri chemufananidzo akadaro

    Mhoro zuva rakanaka.
    Ini ndiri mutsva kunyika yeLinux muchina manejimendi, uye ini ndaida kuziva zvaunokurudzira nezvazvo: ksh, bash, perl, php, python….
    Ndinokutendai zvikuru nekukwazisa.
    Michael.