Ọjọ Ẹtì ỌJỌ: ṣiṣan boṣewa

Kaabo si Ọjọ Ẹti miiran ...

O to akoko lati mọ apakan aami ti ebute naa. Lẹhin Elo ero Mo ti pinnu lati ṣẹda kan post nipa awọn boṣewa ṣiṣan; Botilẹjẹpe yoo jẹ Egbò, Mo ro pe o jẹ nkan ti gbogbo eniyan yẹ ki o mọ.

Standard san

Standard san O jẹ awọn ikanni ibaraẹnisọrọ pupọ laarin olumulo ati ebute naa. Awọn “awọn ikanni” Input / Output wọnyi ṣe ifihan tabi mu alaye nigbati o ba pa aṣẹ kan.

Awọn aworan atọka kiakia lori awọn ṣiṣan boṣewa.

Awọn aworan atọka kiakia lori awọn ṣiṣan boṣewa.

Awọn isopọ I / O 3 ni: stdin Standard igbewọle, stdout Standard o wu, stderr Aṣiṣe boṣewa.

stdin: Standard igbewọle

Igbewọle boṣewa jẹ ọna ti a gba alaye lati aṣẹ kan, boya nipasẹ awọn paipu, redirection, keyboard, ati bẹbẹ lọ. A ṣe idanimọ rẹ pẹlu alaye apejuwe faili 0.

Oluṣalaye jẹ itọka lati wọle si-ni ọran yii- awọn ifibọ ati awọn ikanni o wu. Iwọnyi jẹ awọn iye int, nigbagbogbo 0, 1, ati 2.

Apẹẹrẹ ti stdin yoo jẹ:

too <kikojọ

O gba gbogbo alaye ti o wa ninu atokọ-ni idi eyi awọn nọmba ti a kọ laileto-, ati pe nigbati o ba ṣe atunṣe faili si aṣẹ ls, o ṣe atokọ akojọ nọmba ni labidi. Ninu apẹẹrẹ yii awọn asia jẹ eyiti a ko mọ.

stdout: Standard o wu

Iṣeduro boṣewa, bi orukọ rẹ ṣe tumọ si, ṣe afihan iṣuṣẹ aṣẹ kan nipasẹ itọnisọna naa. Ti a ba kọ ls, gbogbo alaye ti o fihan wa loju iboju jẹ iṣujade boṣewa. O jẹ aṣoju nipasẹ apejuwe 1.

Bayi Emi yoo gbiyanju lati fi sori ẹrọ stdin ati stdout pẹlu iwe afọwọkọ ti a kọ sinu bash, ni irọrun nitori Mo nifẹ bash hahaha. 🙂

igbeyewo.sh

#! / bin / bash ti o ba ti [-t 0]; lẹhinna iwoyi "O nlo stdout" elif [-t 1]; lẹhinna iwoyi "O nlo stdin" ẹlomiran iwoyi "Aṣiṣe Brutal" fi

Bayi iboju sikirinifoto ti o ṣe afihan bi o ṣe le lo iwe afọwọkọ naa. Nigbati o ba ṣe atunṣe tabi lilo paipu kan pẹlu lilo iwe afọwọkọ idanwo -t lati mọ ti o ba jẹ pe a ti pa iwe afọwọkọ stdout nikan, ati pe ti kii ba ṣe o han ni stdin.

idanwo bashsh.s ls | bash test.sh bash test.sh </ ati be be / passwd
Iwe afọwọkọ ti o ni ibeere ati awọn abajade rẹ ...

Iwe afọwọkọ ti o ni ibeere ati awọn abajade rẹ ...

Ranti lati yipada aṣẹ ati adaṣe ki o kọ ẹkọ.

stderr: Standard aṣiṣe

Aṣiṣe Aṣeṣe ni ọna awọn eto ṣe afihan awọn aṣiṣe tabi awọn iwadii aisan. O jẹ aṣoju nipasẹ apejuwe 2.

Lati ni oye imọran, eyi ni ipo naa: nigba ti a ba fẹ fipamọ aṣiṣe aṣẹ kan, ohun akọkọ ti a ronu nipa rẹ ni ṣiṣatunṣe iṣẹjade si ọrọ lasan.

ls> info.txt

Eyi yoo ṣiṣẹ, alaye ti aṣẹ yoo wa ni fipamọ ni faili ọrọ pẹtẹlẹ kan. Ṣugbọn nigba fifipamọ aṣiṣe naa, ko tọju rẹ, ṣugbọn o fihan loju iboju ati faili ọrọ lasan ti ṣofo.

Dipo ti a ba lo 2> lati tọka si fipamọ stderr ninu faili naa:

ls foo 2> info.txt

Bayi o yoo fipamọ alaye aṣiṣe ni faili ọrọ naa.

Ọpọlọpọ ninu awọn ikarahun gba laaye stderr ati stdout lati wa ni fipamọ ni aṣẹ aṣẹ kan pẹlu &> ibiti Foo jẹ itọsọna ti ko si tẹlẹ

ls Awọn gbigba lati ayelujara Foo &> info.txt

Faili yii yoo ni alaye ti aṣiṣe nigba ṣiṣe ls ni Foo ati pe yoo ṣe atokọ awọn ilana labẹ Awọn igbasilẹ.

Ati nikẹhin, kini olokiki yẹn 2> & 1?

Rọrun, ṣe atunṣe stderr si stdout. Iyẹn & ni aarin> ati 1 tumọ si pe yoo ṣe atunṣe si stdout. Ti ko ba si nibẹ, yoo jẹ nkan bi ... "ṣe atunṣe aṣiṣe si faili 1".

Ati pẹlu eyi o ṣee ṣe lati ṣe atunṣe:

  • stdout si faili kan
  • stderr si faili kan
  • stdout si stderr
  • stderr si stdout
  • stderr ati stdout si faili kan
  • laarin awọn omiiran

Iyẹn ni fun eniyan loni. A ka ati ọpẹ fun diduro nipasẹ. 😀


Awọn akoonu ti nkan naa faramọ awọn ilana wa ti awọn ilana olootu. Lati jabo aṣiṣe kan tẹ nibi.

Awọn asọye 6, fi tirẹ silẹ

Fi ọrọ rẹ silẹ

Adirẹsi imeeli rẹ yoo ko le ṣe atejade. O beere aaye ti wa ni samisi pẹlu *

*

*

  1. Lodidi fun data naa: Miguel Ángel Gatón
  2. Idi ti data naa: SPAM Iṣakoso, iṣakoso ọrọ asọye.
  3. Ofin: Iyọọda rẹ
  4. Ibaraẹnisọrọ data: Awọn data kii yoo ni ifọrọhan si awọn ẹgbẹ kẹta ayafi nipasẹ ọranyan ofin.
  5. Ibi ipamọ data: Alaye data ti o gbalejo nipasẹ Awọn nẹtiwọọki Occentus (EU)
  6. Awọn ẹtọ: Ni eyikeyi akoko o le ni opin, gba pada ki o paarẹ alaye rẹ.

  1.   igbagbogbo3000 wi

    Awon. Ṣeun si awọn itọnisọna rẹ, Mo fẹran Bash pupọ diẹ sii.

  2.   Quincy magoo wi

    Olufẹ, ti o nifẹ, sibẹsibẹ o ni aṣiṣe ninu laini atẹle:

    "Ati pe nigbati o ba n ṣe atunṣe faili si aṣẹ ls", o yẹ ki o jẹ "ati nigba ṣiṣatunṣe faili si aṣẹ iru".

    A ikini.

  3.   Miguel wi

    Aṣiṣe kan wa ni ibẹrẹ ọrọ naa, nigbati o tọka aṣẹ «ls», o yẹ ki o jẹ “too”:
    "Mu gbogbo alaye ti o wa ninu atokọ-ninu ọran yii awọn nọmba ti a kọ laileto-, ki o ṣe atunṣe faili si aṣẹ ls (nibi yoo jẹ iru)"

    Ẹ ati ọpẹ fun pinpin iṣẹ rẹ

  4.   opopona wi

    Eyi jẹ nla fun cron, nibi ti o fẹ ki iṣelọpọ wa ni fifọ (/ dev / asan) ṣugbọn awọn aṣiṣe lati tọju ni awọn faili. Pẹlupẹlu, nigbati mo ba ṣe eyi, Mo maa n lo aṣẹ ọjọ lati ṣalaye gangan nigbati wọn kuna.

    Bash (sh) ni awọn irinṣẹ wọnyi ti dagbasoke nipasẹ imoye Unix “ṣe ohun kan, ki o ṣe daradara”

  5.   lol wi

    Daradara Emi ko rii ohunkohun

    1.    Ohùn wi

      Haha daradara o ti ṣalaye daradara, kini o ko loye?