Komentorivin tulkki. Valitse Linux Command Line Interpreter

Linuxissa ei ole erillistä objektia nimeltä "järjestelmä". Järjestelmä on järjestelmä, koska se koostuu lukuisista komponenteista, jotka ovat vuorovaikutuksessa keskenään. Päällikkö järjestelmän komponentit- käyttäjä. Hän komentaa konetta, ja se toteuttaa hänen käskynsä. Toisen ja kolmannen osan oppaat kuvaavat järjestelmäpuhelut(ytimen funktiot) ja kirjastofunktiot. Ne ovat suoria komentoja järjestelmälle. Totta, voit käyttää niitä vain kirjoittamalla ohjelman (useimmiten C-kielellä), usein melko monimutkaisen ohjelman. Tosiasia on, että ytimen toiminnot toteuttavat matalan tason operaatioita, ja yksinkertaisimmankin käyttäjän tehtävän ratkaisemiseksi on suoritettava useita tällaisia ​​​​toimintoja muuntamalla yhden tulos toisen tarpeisiin. Käyttäjälle on keksittävä toinen - korkeamman tason ja kätevämpi käyttää - järjestelmän ohjauskieli. Kaikki Metodiuksen työssään käyttämät komennot olivat osa tätä nimenomaista kieltä.

Mistä oli helppo päätellä, että jonkinlaisen järjestelmän pitäisi myös käsitellä nämä komennot ja muuttaa ne järjestelmä- ja kirjastokutsujen sarjaksi. erikoisohjelma, ja juuri hänen kanssaan käyttäjä käy jatkuvasti dialogia heti järjestelmään kirjautumisen jälkeen. Ja niin kävi: tämä ohjelma on nimeltään tulkki komentorivi tai komentokuori("kuori"). Sitä kutsutaan "kuoreksi" juuri siksi, että kaikki järjestelmän ohjaus tapahtuu ikään kuin sen "sisältä": käyttäjä kommunikoi sen kanssa hänelle sopivalla kielellä (käyttäen tekstikomentoriviä) ja se kommunikoi järjestelmän muiden osien kanssa. järjestelmä heille sopivalla kielellä (kutsumalla ohjelmoituja toimintoja).

Edellä mainitut komentorivin jäsennyssäännöt ovat siis sääntöjä, jotka toimivat nimenomaan komentotulkissa: käyttäjä syöttää rivin päätteestä, komentotulkki lukee sen, joskus muuntaa sen tiettyjen sääntöjen mukaan, jakaa tuloksena olevan rivin komennon ja parametrien mukaan. , ja suorittaa sitten komennon välittäen hänelle nämä parametrit. Komento puolestaan ​​analysoi parametrit, valitsee avaimet niiden joukosta ja tekee sen, mitä pyydettiin, näyttäen samalla dataa käyttäjälle päätelaitteessa, minkä jälkeen se valmistuu. Kun komento on suoritettu, "perääntyminen taustalle" -komentotulkin työ jatkuu, se lukee uudelleen komentorivin, jäsentää sen, kutsuu komennon... Tämä jatkuu, kunnes käyttäjä käskee komentotulkin lopettamaan itsensä (käyttäen uloskirjautumista tai ohjausmerkki "^ D", joka komentotulkille tarkoittaa samaa kuin muissakin ohjelmissa: terminaalista ei tule enää syöttöä).

Tietenkin Linuxissa on useita komentotulkkeja. Yksinkertaisin niistä, joka ilmestyi UNIXin varhaisissa versioissa, oli nimeltään sh tai "Bourne Shell" - sen kirjoittajan Stephen Bournen nimen mukaan. Ajan myötä se korvattiin - aina kun mahdollista - tehokkaammalla bashilla, "Bourne Again Shellillä".

Sanaleikki: "Bourne Again" luetaan ääneen "uudestisyntynyt", eli "uudestisyntynyt".

bash on parempi kuin sh kaikin puolin, erityisesti sen komentorivin muokkausominaisuudet. Sh:n ja bashin lisäksi järjestelmään voidaan asentaa "The Z Shell", zsh, tähän mennessä tehokkain. komentojen tulkki(ei vitsi, 22 tuhatta riviä dokumentteja), tai tcsh, päivitetty ja myös erittäin tehokas versio vanha C Shell, jonka komentosyntaksi on samanlainen kuin C-ohjelmointikieli.

Kun Gurevich lisäsi Metodiuksen tilin järjestelmään, hän ei kysynyt, mitä komentotulkkia hän tarvitsi, koska hän tiesi: aloittelijalle komentotulkin nimi on tyhjä lause. Käyttäjälle heti sisäänkirjautumisen jälkeen käynnistettävän shellin nimi on kuitenkin ns. käynnistää komentotulkin(kirjautumiskuori), - tämä on osa käyttäjää tili, jonka käyttäjä voi muuttaa chsh (change shell) -komennolla.

Mitä tahansa järjestelmänhallintatehtävää Linux-käyttäjä kohtaakin, sillä täytyy olla ratkaisu komentotulkin suhteen. Itse asiassa käyttäjäongelman ratkaiseminen on sen kuvaamista shell-kielellä. Käyttäjän ja komentotulkin välinen kommunikaatiokieli on korkean tason ohjelmointikieli, jota täydennetään toisaalta komentojen ja järjestelmän vuorovaikutuksen organisoinnilla ja toisaalta vuorovaikutuksen avulla käyttäjä, mikä helpottaa ja nopeuttaa työskentelyä komentorivin kanssa.

Kuva 2. Komentorivikäyttöliittymä. Toinen painos, tarkistettu ja laajennettu. Käyttäjän vuorovaikutus tietokoneen kanssa terminaalin ja kuoren kautta.

Komennot ja apuohjelmat

$ apropos s . . . (neljä ja puoli tuhatta riviä!)

Esimerkki 18. Turha käsky

Yksi epäonnistunut apropon käynnistys riitti Methodiukselle ymmärtämään: Linuxissa on paljon komentoja. Hänestä tuli mieleen, että mikään ohjelma - edes komentotulkki - ei voinut itsenäisesti ymmärtää kaikkia dokumentoituja komentoja. Lisäksi Gurevich nimesi suurimman osan joukkueista apuohjelmia, tuo on hyödyllisiä ohjelmia. Siksi komentotulkin ei tarvitse pystyä suorittamaan kaikkea, mitä käyttäjä syöttää. Hänen tarvitsee vain jäsentää komentorivi, purkaa komento ja parametrit siitä ja suorittaa sitten apuohjelma - ohjelma, jonka nimi vastaa komennon nimeä.

Todellisuudessa kuoressa on vähän alkuperäisiä komentoja. Pohjimmiltaan nämä ovat ohjelmointikielioperaattoreita ja muita tapoja ohjata itse tulkkia. Kaikki Methodiukselle tutut komennot, jopa kaiku, ovat Linuxissa erillisinä apuohjelmina. Komentotulkin tehtävänä on vain valmistella komentorivillä olevia parametreja (esimerkiksi laajentaa malleja), ajaa ohjelmia ja käsittelee työnsä tuloksia.

$ tyyppi info on /usr/bin/info $ tyyppi echo echo on sisäänrakennettu komentotulkki $ tyyppi -a echo echo on sisäänrakennettu komentotulkki echo on /bin/echo $ tyyppi -a -t echo sisäänrakennettu tiedosto $ tyyppi -a -t päivämäärätiedosto $type -at cat tiedosto

Esimerkki 19. Komentotyypin määrittäminen

Bashissa komennon tyyppi voidaan määrittää type-komennolla. Bashin alkuperäisiä komentoja kutsutaan sisäänrakennettu(sisäänrakennettu komento) ja se näyttää apuohjelmia varten polku, joka sisältää sen hakemiston nimen, jossa vastaavan ohjelman tiedosto sijaitsee, ja tämän ohjelman nimen. Jotkut hyödyllisimmistä komennoista on sisäänrakennettu bashiin, vaikka ne ovat saatavilla apuohjelmina (esim. echo). Sisäänrakennettu komento toimii samalla tavalla, mutta koska sen suorittaminen vie huomattavasti vähemmän aikaa, komentotulkki valitsee sen, jos mahdollista. Vaihda "-a" (" a ll", tietysti), saa tyypin tulostamaan kaiken mahdollisia vaihtoehtoja komennon tulkinta, ja " -t" -kytkin näyttää komentotyypin polun sijaan.

Gurevichin neuvosta Methodius ryhmitti avaimet kirjoittamalla "-at" "-a -t":n sijaan. Monet apuohjelmat antavat sinun tehdä tämän vähentäen komentorivin pituutta. Jos parametrinen avain havaitaan, sen on oltava ryhmän viimeinen ja sen arvon on seurattava odotetusti. Vain yksikirjaimia avaimia voidaan ryhmitellä.

Sanat ja erottimet

Komentoriviä jäsennettäessä komentotulkki käyttää käsitettä erotin(erotin). Erotin on merkki, joka erottaa sanat; joten komentorivi on sekvenssi sanat(millä väliä) ja erottimet(millä ei ole väliä). Shellissä erottimet ovat välilyönti, sarkainmerkki ja rivinvaihtomerkki (joka voi silti esiintyä sanojen välissä, kuten on kuvattu luennoissa Työskentely tekstidatan kanssa ja komentotulkin ominaisuudet). Kahden vierekkäisen sanan erottimien määrällä ei ole väliä.

Kolminkertaisen sanan ensimmäinen sana välitetään komennolle ensimmäisenä parametrina, toinen - toisena jne. Jotta erotin olisi sanan sisällä (ja tuloksena oleva erottimen sisältävä merkkijono välitetään yhtenä parametrina) , koko vaadittu osamerkkijono on ympäröitävä kerta- tai lainausmerkeillä:

$ echo Yksi Kaksi Kolme Yksi Kaksi Kolme $ echo Yksi "Kaksi Kolme" Yksi Kaksi Kolme $ echo "Yksi > > Voi. Ja mitä seuraavaksi? > Ai, unohdin lainaukset!" Yksi Oh. Mitä seuraavaksi? Ai, unohdin lainaukset! $

Esimerkki 20. Lainaus komentorivillä

Ensimmäisessä tapauksessa kaikukomento välitettiin kolme parametria - "Yksi", "Kaksi" ja "Kolme". Hän toi ne esiin erottamalla ne välilyönnillä. Toisessa tapauksessa oli kaksi parametria: "Yksi" ja "Kaksi kolme". Tämän seurauksena myös nämä kaksi parametria tulostettiin välilyönnillä erotettuina. Kolmannessa tapauksessa oli vain yksi parametri - aloittavasta heittomerkistä ""One" - loppuun "...unohdin!" " Koko ajan, kun hän kirjoitti, bash antoi Methodiukselle avuliaita vihjeen ">" - merkkinä siitä, että komentorivin kirjoittaminen jatkui, mutta lainausmerkkien sisällön syöttämisessä.

Merkkien laiteohjaimet

Kun komento annetaan, merkkilaiteohjain tulkitsee ensin merkkivirran. Se, mikä ohjain toimii, riippuu kussakin tapauksessa käytetystä laitteesta (katso tarkempia tietoja kohdasta "Ohjelman kuvaus. Osa 1. Apuohjelmien viite" KPDA.10964-01 13 01).

Huomautus. Jotkut näppäinpainallukset voidaan käsitellä eri tavalla kuin tässä osiossa on kuvattu järjestelmäkokoonpanosi mukaan.

Syöttötilat

Merkki-I/O-laiteajurit voivat toimia kummassa tahansa käsittelemättömän ("raaka") syöttötiedon tila(raakasyöttötila) tai sisään kanoninen tila(kanoninen tila), tai muokattava syöttötila(muokattu syöttötila). Raakasyöttötilassa kaikki merkit välitetään sovellukselle sitä mukaa kun ne syötetään. Muokattavassa syöttötilassa sovellus vastaanottaa merkkejä vasta, kun koko syöttörivi on suoritettu (yleensä ilmaistaan ​​rivinvaihdolla).

Terminaalin tuki

Jotkut ohjelmat (esim.vi) vaaditaan tietoja siitä, mitä toimintoja päätelaite voi suorittaa (voiko kohdistinta siirtää, näyttöä tyhjentää jne.). Ympäristömuuttuja TERMIilmaisee käytettävän päätteen tyypin ja /usr/lib/terminfo-hakemisto on päätetietokanta. Tämä hakemisto sisältää joukon alihakemistoja (a - z), jotka tallentavat tietoja vastaavasta päätteestä. Jotkut sovellukset käyttävät /etc/termcap, joka on vanha yksitiedostoinen tietokantamalli /usr/lib/terminfo sijaan.

Oletuspääte onqansi-m (ANSI-päätteen QNX-versio). Lisätietoja päätetyypin asettamisesta on alaosassa. "Päätetyypit" osiossa 9.

Palvelu telnet

Kun käytät verkkopalveluatelnet kahden QNX-koneen välistä viestintää varten (joissa on QNX 4 tai QNX Neutrino), parametri -8 tulee määrittää kahdeksanbittisen datapolun mahdollistamiseksi. Jos muodostat yhteyden QNX Neutrinoa käyttävään koneeseen jostakin muusta käyttöjärjestelmästä ja pääte ei toimi kunnolla, sulje telnet ja suorita apuohjelma uudelleen valinnalla -8.

Huomautus . Käynnistyksessätelnet Windows-käyttöjärjestelmästä käyttää ansi- tai vt100-tilaa päätetyypin mukaan.

Yleistä tietoa näppäimistöstä

Taulukossa 4.1 näyttää, kuinka merkki-I/O-laiteajurit tulkitsevat näppäinpainalluksia erilaisia ​​avaimia ja niiden yhdistelmät (eli samanaikaisesti painettujen näppäinten ryhmät). Ajurit käsittelevät näppäinpainallukset välittömästi niiden suorittamisen jälkeen.

Huomautus. Järjestelmän vastaus käyttäjän näppäimistön käyttöön voi poiketa alla kuvatusta, jos:

Komentojen tulkki, komentorivin tulkki - tietokoneohjelma, käyttöjärjestelmän osa, joka tarjoaa perusominaisuudet ohjaa tietokonettasi käyttämällä interaktiivinen syöttö komennot komentoriviliittymän kautta tai eräkomentotiedostojen peräkkäinen suorittaminen.

Yleensä sen toiminnot rajoittuvat tarjoamaan käyttäjälle mahdollisuuden suorittaa muita ohjelmia peruskomennot I/O ja oma yksinkertainen komentosarjaohjelmointikieli.

@ echo off : begin Cls Title Calculator Color 71 Echo Syötä yhtälö: Set /P exp = Aseta /A tulos =% exp % Otsikko Laskettu Echo Yhtälösi: %exp% Kaiku Ratkaisu: %result% Tauko > nul goto begin

Laskin bash-kuorelle:

#!/usr/bin/env bash echo "Laskin" luettaessa -p "Anna lauseke:" expr do echo "Tulos: $(($expr ))" valmis

Käsitteet

Shell toimii yksinkertaisilla komennoilla.

Yksinkertainen komento on välilyönnillä erotettu sanojen sarja. Painamalla Syötä avaimet Kun syötät komentoa tai rivinvaihtoa käsiteltäessä komentosarjaa, komentotulkki ilmoittaa, että komento on suoritettu. Se käsitellään ja toteutetaan.

Kuljetin on yhden tai useamman komennon sarja erotettuna |(& for cmd.exe). Jokaisen komennon vakiolähtö viimeistä lukuun ottamatta kytketään käyttämällä ohjelmakanava seuraavan komennon vakiosyöttövirran kanssa. Jokainen komento suoritetaan erillisenä prosessina; tulkki odottaa valmistumista viimeinen käsky. Liukuhihnan poistumistila on sen viimeisen komennon poistumistila. Tässä on esimerkki yksinkertaisesta putkistosta bash-tulkkia varten:

$ls | tee säästää | wc 15 15 100

Komentojen tulkit

Data Control Language - tietokantakieli hallinnollisiin toimintoihin

Digital Command Language on komentorivitulkki DEC-käyttöjärjestelmille.

DCL - moderni ranskalainen raskas panssaroitu pelastusajoneuvo

MZ (muoto)

MZ- vakiomuoto 16-bittinen suoritettavat tiedostot.EXE-laajennuksella DOS:lle. Nimetty sen allekirjoituksen mukaan - ASCII-merkit MZ (4D 5A) kahdessa ensimmäisessä tavussa. Tämä allekirjoitus on Mark Zbikowskin nimikirjaimet, yksi MS-DOS:n luojista. Formaatti kehitettiin korvaamaan vanhentunut .COM-muoto. MZ-suoritettavat tiedostot sisältävät metatietoja, voivat olla kooltaan suurempia kuin 64 kilotavua ja käyttää useita erityyppisiä muistisegmenttejä (koodi, data ja pino), ja ohjelman sisääntulopiste voi myös olla missä tahansa (.COM-tiedostoissa komennon suoritus alkaa aina välittömästi tiedoston alussa). Suoritettavan tiedoston lataustapa määräytyy sen allekirjoituksen perusteella: jos se on olemassa, MZ-otsikko käsitellään, jos ei, tiedosto käynnistetään nimellä .COM - tiedostopäätteestä riippumatta (esimerkiksi uusimmassa MS-DOS versiot Komentorivitulkki COMMAND.COM on itse asiassa EXE-tiedosto).

Myöhemmät Windowsin suoritettavat muodot alkavat MZ-tyngällä. Tyypillisesti kääntäjien lisäämä tynkä antaa viestin, kuten "Tätä ohjelmaa ei voi ajaa DOS-tilassa."

Vanhemmat DOS-linkittäjät ovat saattaneet käyttää ZM-allekirjoitusta, jonka myös MS-DOS ja useat yhteensopivia käyttöjärjestelmiä tunnistavat.

SQL*Plus

SQL*Plus on komentorivitulkkiohjelma tietokannan hallintajärjestelmän kanssa työskentelemiseen Oracle-tiedot Tietokanta, jossa SQL- ja PL/SQL-komentoja voidaan suorittaa interaktiivisesti tai komentosarjasta.

SQL*Plus toimii suhteellisen yksinkertaisena työkaluna, jossa on komentorivikäyttöliittymä. Ohjelmoijat ja tietokannan järjestelmänvalvojat käyttävät sitä yleensä oletustyökaluna, koska käyttöliittymä on käytettävissä melkein kaikissa asennuksissa ohjelmisto Oraakkeli.

TOPS-20

TOPS-20 (aiemmin TENEX) on BBN Technologiesin (Bolt, Beranek ja Newman) kehittämä käyttöjärjestelmä DEC PDP-10 -tietokoneille. TENEX sisälsi täydellisen järjestelmän toteutuksen virtuaalinen muisti, joka salli ohjelmien paitsi käyttää kaikkia 262 kilosanaa muistia (vastaa 1152 kilotavua), mutta myös tehdä niin samanaikaisesti; järjestelmä sivun organisaatio muisti kopioidaan tiedot kohteesta ja mihin ulkoinen media tarvittaessa.

Yksi erottuvia piirteitä TENEX oli sen käyttäjälähtöinen komentorivitulkki. Toisin kuin sen ajan tyypilliset järjestelmät [mitä?], TENEX käytti pitkiä nimiä komentoja jopa tarpeettomilla sanoilla. Jos esimerkiksi haluat tulostaa hakemiston sisällön UNIXissa, käytä ls-komentoa ja TENEXissä käytä DIRECTORY (OF FILES) -komentoa, jossa HAKEMISTO on avainsana, ja OF FILES - redundanssi otettiin käyttöön komennon tarkoituksen selventämiseksi. TENEXille kirjoitettiin itsekopioiva ohjelmisto paikallinen verkko Creeper-ohjelma, jota pidetään virheellisesti yhtenä ensimmäisistä maailmassa tietokonevirukset.

Ota komento

Take Command on nimi JP Software, jota käytetään sen graafisissa komentorivitulkeissa Windows 3.1 (TC16) 32-bitille Windows-versiot(TC32) ja uudemmat OS/2 Presentation Managerille (TCOS2). Ne julkaistiin rinnakkain versioiden 4DOS 5.5, 4NT 2.5 ja 4OS2 2.52 kanssa. Tuotteet OS/2:lle ja Windowsille 16-bittisinä versioina kestivät versioon 2.02 asti, ja ne voidaan edelleen ladata JP Softwaren FTP-sivustolta.

Take Command on tänään komentorivitulkki perheen käyttöjärjestelmille Microsoft Windows. Sen edut tavalliseen Windows-komentokulkoon verrattuna ovat samat kuin 4DOS:n edut MS-DOS-paketin COMMAND.COM:iin nähden.

Versiosta 9 lähtien nimi Take Command viittaa koko ohjelmistoon: TCI ( komentokäyttöliittymä välilehdissä) ja 4NT. Kehitys alkuperäinen versio Take Command on lopetettu. TCI-komponentti on nyt laajennettu sisältämään tiedostonhallinnan, mukautetut paneelit ja joukon muita ikkunoita, ja 4NT on nimetty uudelleen TCC:ksi ja lisäksi täysversio saatavilla ilmainen "lite" (TCC/LE).

Take Command on lisännyt sisäänrakennetun editorin ja virheenkorjauksen erätiedostoille, komentoihin kuuluu nyt tiedostojen käyttö FTP:n ja HTTP:n kautta, pääsy verkkotiedostojärjestelmään, integrointi aktiiviseen komentosarjaan, järjestelmän valvonta- ja hallintakomennot. Windows-palvelut.

Take Command Console (TCC)

Take Command Console (TCC) (aiemmin 4DOS Windows NT:lle ja 4NT:lle) on JP Softwaren tuottama komentorivitulkki, joka on monipuolinen korvaaminen Microsoft Windowsin tavalliselle komentorivitulkille - CMD.EXE. TCC perustuu aiemmin julkaistuun komentokangot 4DOS DOS:lle ja 4OS/2 OS/2:lle.

Versiosta 12 lähtien 4NT on poistettu Windowsin tuki 95, 98, ME, NT ja 2000. Versiosta 16 lähtien TCC on poistanut tuen Windows XP:lle, vaikka käyttö XP:ssä on edelleen mahdollista. 4NT:n nimeksi on muutettu Take Command Console (TCC) osana JP Software Take Command -versiota 9 ja uudempia.

TCC tarjoaa laajan valikoiman komentoriviä ja erätiedostot. Laajan pääsyn tarjoamiseksi käyttöjärjestelmään TCC antaa sinun työskennellä yhdessä muiden komentosarjakielten - REXX, Ruby ja Perl tai Windows-skriptikielien kanssa Active Scripting -koneiden - VBScript ja JScript sekä PerlScript ( ActivePerlin kautta), TclScriptin (ActiveTcl:n kautta), PythonScriptin (ActivePythonin kautta) ja versio Object REXX -skriptimoottorista.

Komentorivikäyttöliittymä

Command Line Interface (CLI) on ihmisen ja tietokoneen välinen tekstiliitäntä (CUI), jossa ohjeet annetaan tietokoneelle pääasiassa näppäimistön avulla. tekstijonoja(komennot), UNIX-järjestelmissä on mahdollista käyttää hiirtä. Tunnetaan myös nimellä konsoli.

Komentorivikäyttöliittymää verrataan valikkopohjaisiin ohjelmanhallintajärjestelmiin sekä erilaisiin toteutuksiin GUI.

Komentoriviliittymässä tulostettavan tiedon muotoa ei säännellä; Yleensä tämä on myös yksinkertainen tekstitulostus, mutta se voi olla myös graafista, ääntä jne.

Palautuskonsoli

Palautuskonsoli on Windows 2000:n, Windows XP:n ja Windows XP:n osa Windows Server 2003. Se tarjoaa järjestelmänvalvojille keinot suorittaa rajoitettu määrä tehtäviä komentoriviliittymän avulla. Sen päätarkoitus on antaa järjestelmänvalvojille mahdollisuus palauttaa käyttöjärjestelmä tilanteissa, joissa Windows ei käynnisty GUI-tilaan. Palautuskonsolia käytetään pääsyn kiintolevylle hätä komentorivin kautta. Siten palautuskonsoliin pääsee joko alkuperäisen kautta asennusmedia, käytetty Windows-asennukset, tai se voidaan myös asentaa HDD ja lisää NTLDR valikkoon, mutta jälkimmäiseen luottaminen on riskialtisempaa, koska se edellyttää tietokoneen käynnistymistä ennen NTLDR:ää.

Ohjelmointikielten vertailu

Alla oleva taulukko korostaa tiettyjen ominaisuuksien olemassaoloa tai puuttumista joissakin nykypäivän suosituissa ohjelmointikielissä. Sarakkeet on järjestetty aakkosjärjestyksessä. Jos ominaisuus jollakin kielellä ei ole suoraan saatavilla, mutta sitä voidaan emuloida muilla tavoilla, taulukko osoittaa, että sitä ei ole olemassa.

Taulukkoa täytettäessä huomioidaan vain faktatieto, vaikka ominaisuuden olemassaolo ei välttämättä ole kielen etu ja puuttuminen haittana.

NTFS-yhteyspiste

NTFS Junction Point - innovaatio tiedostossa NTFS-järjestelmä 3.0 (Windows 2000:n oletustiedostojärjestelmä). Uuden innovaation ydin on, että määritetty looginen asema tai kansio näytetään kansiona toisessa looginen asema tai toiseen kansioon. Tämän ominaisuuden avulla voit luoda tehosteita tiedostojärjestelmä(esimerkiksi tallenna saman käyttäjän kaksi profiilia ja vaihda niiden välillä ilman erityisiä ongelmia). Liitoskohta on toteutettu NTFS:ssä as erityinen tyyppi koota pisteet.

Tämä ominaisuus voidaan määrittää Levynhallinta-laajennuksessa: napsauta oikealla painikkeella valitse liitetyssä asemassa "Vaihda asemakirjain tai asemapolku...", niin kaikki näkyvät luettelossa mahdollisia tapoja levylle, oletusarvoisesti levy on käytettävissä sen kirjaimella ("X:" - missä X on aseman kirjain). Voit vaihtaa levyn polun käyttämällä vastaavia painikkeita luettelon alla.

Voit luoda yhteyspisteen kansioon käyttämällä linkitettyä apuohjelmaa, joka sisältyy Windows 2000- ja Windows XP Resource Kit -pakettiin. SISÄÄN Windows Vista ja ylempänä voidaan standardin avulla luoda yhteyspiste tai symbolinen linkki konsolin komento mklink.

Sinun ei tarvitse käyttää tällaista kansiota Lisäasetukset sovelluksiin, eli pääsy tapahtuu kirjoittamalla kansion osoite. Näin ollen rajoitus 26 paikalliselle taltiolle yhdellä tietokoneella katoaa (kirjainten määrä Englannin aakkoset asemien nimeämistä varten), koska taltiota voi käyttää antamatta sille nimeä.

Shebang (Unix)

Shebang (eng. shebang, sha-bang, hashbang, pound-bang tai hash-pling) - ohjelmoinnissa kahden symbolin sarja: hash ja huutomerkki("#!") komentosarjatiedoston alussa.

Kun shebang-skripti suoritetaan ohjelmana Unix-tyyppisissä käyttöjärjestelmissä, ohjelmanlataaja käsittelee shebangin jälkeisen rivin loppuosan tulkkiohjelmatiedoston nimeksi. Lataaja käynnistää tämän ohjelman ja välittää sille komentosarjatiedoston nimen parametrina shebang. Esimerkiksi jos koko nimi komentosarjatiedosto "path/to/script" ja tämän tiedoston ensimmäinen rivi:

#!/bin/sh sitten lataaja suorittaa "/bin/sh" (yleensä Bourne-komentotulkki tai yhteensopiva komentorivitulkki) ja välittää "polku/komentosarjaan" ensimmäisenä parametrina.

Tulkki ohittaa yleensä shebang-rivin, koska #-merkki on monissa kommentin alku. skriptikieliä. Jotkut tulkit, jotka eivät käytä hash-merkkiä osoittamaan kommenttien alkua (kuten Scheme), voivat jättää shebang-rivin pois määrittääkseen sen tarkoituksen. Muut ratkaisut perustuvat esiprosessoriin, joka käsittelee ja poistaa shebang-rivin ennen kuin loput skriptistä välitetään kääntäjälle tai tulkille. Näin toimii esimerkiksi InstantFPC, jonka avulla voit ajaa Free Pascalilla kirjoitettuja ohjelmia komentosarjoina joissakin käyttöjärjestelmissä.

Useimmissa Linux-käyttöjärjestelmissä bash on oletuskomentorivin tulkki. Määritä nykyinen tulkki antamalla seuraava komento:

$ echo $SHELL
/bin/bash

Tämä esimerkki käyttääkomentorivin tulkki lyödä. On monia muita komentotulkkeja. Aktivoidaksesi toisen tulkin, voit kirjoittaa sen nimen komentoriville (ksh, tcsh, csh, sh, bash jne.).

Useimmat täysin varustetut Linux-käyttöjärjestelmät tarjoavat kaikki tässä kuvatut komentotulkit. Pienemmissä käyttöjärjestelmissä voidaan kuitenkin tarjota yksi tai kaksi tulkkia.

Tarkistaa sinua kiinnostavan tuotteen saatavuudentulkkikomentorivi

Helpoin tapa tarkistaa kiinnostavan komentotulkin saatavuus on kirjoittaa sen nimi komentoriville. Jos tulkki on alkanut, se on käytettävissä.

Vaihtoehtoisten kuorien valitsemiseen on useita syitä.

  • Tapa työskennellä UNIX-järjestelmät System V (monet niistä käyttävät oletuksena ksh:tä) tai Sun Microsystems ja muut Berkeley UNIX-pohjaiset järjestelmät (jotka käyttävät usein csh:ta). Tässä tapauksessa näiden tulkkien käyttökomentorivitulee olemaan kätevämpää.
  • Tarve suorittaa komentosarjoja, jotka on luotu tiettyä komentotulkkia varten.
  • Vaihtoehtoisen komentotulkin ominaisuudet voivat olla parempia. Esimerkiksi yksi ryhmän jäsenistä Linuxin käyttäjiä käyttää mieluummin ksh:ta, koska hän ei pidä tavasta, jolla bash luo aliaksia.

Vaikka useimmat käyttäjät haluavat työskennellä yhdessä kuoressa, saadut taidot auttavat heitä oppimaan työskentelemään muissa.tulkit komentorivi , katselee silloin tällöin viiteopas(esimerkiksi käyttämällä manbash-komentoa). Useimmat ihmiset käyttävät bashia, koska ei ole mitään syytä vaihtaa toiseen tulkkiin.

Käyttämällä Bashia ja ch

Nimi bash on lyhenne sanoista Bourne Again SHell. Tämä lyhenne osoittaa, että bash perii Bourneshell-tulkin (sh-komennon), jonka on luonut Steve Bourne AT&TBell Labsista. Brian Fox Free Software Foundationista loi bashin osana GNU-projektia. Myöhemmin kehitys siirtyi Chet Rameyn käsiin Case Western Reserve -yliopistossa.

Bash-tulkki sisältää ominaisuuksia, jotka on kehitetty sh- ja ksh-tulkeille aikaisemmat versiot UNIX, sekä useita csh-tulkin ominaisuuksia.

Voit odottaa, että useimmat Linux-järjestelmät, muut kuin erikoistuneet (kuten ne, jotka on upotettu tai käynnistetty ulkoinen asema), bash on oletustulkki. Erikoistuneissa järjestelmissä voidaan tarvita pienempi komentotulkki, mikä tarkoittaa myös rajoitettuja ominaisuuksia.

Suurin osa esimerkeistä tässäartiklasuunniteltu bash-käyttöön.

Bash-tulkki voi ajaa sisään erilaisia ​​tiloja yhteensopivuus jäljittelemällä muiden kuorien käyttäytymistä. Se voi jäljitellä Bourne-kuoren (sh) tai POSK-standardien mukaisen kuoren (bash -posix).

Tämän seurauksena bash pystyy todennäköisemmin lukemaan onnistuneesti määritystiedostoja ja suorittamaan erityisesti muille komentotulkeille kirjoitettuja komentosarjoja.

Kaikki leikkaussalit tarjotaan Linux-järjestelmät oletuksena käyttää bash-tulkkia, paitsi käyttöjärjestelmissä, jotka on käynnistetty irrotettava tietoväline, jotka käyttävät oletuksena tuhkatulkkia.

tcsh:n (ja aikaisemman csh-tulkin) käyttäminen

Tcsh-komentotulkki on Cshell (csh) -tulkin avoimen lähdekoodin toteutus. lähdekoodi. Bill Joy loi csh-tulkin, ja sitä käytetään oletuksena melkein kaikissa Berkeley UNIX -järjestelmissä (sellaisia ​​järjestelmiä jakeli Sun Microsystems).

Monet csh:n ominaisuuksista, kuten komentorivimuokkaus ja komentohistorian hallintamenetelmät, on toteutettu tcsh:ssa ja muissa komentotulkeissa. Aivan kuten sh-komento ajaa bash-tulkin sh-yhteensopivassa tilassa, csh-komento ajaa tcsh-tulkin csh-yhteensopivassa tilassa.

Ash tulkin käyttö

Ash-tulkki on kevyt versio Berkeley UNIX sh -tulkista. Se ei sisällä monia perustoiminnot eikä tarjoa ominaisuuksia, kuten komentohistoriaa.

Ash-tulkki soveltuu hyvin käytettäväksi sulautetuissa järjestelmissä, joissa järjestelmäresurssit ovat rajalliset. FedoraCore 4 -käyttöjärjestelmässä ash-tulkki on suuruusluokkaa pienempi kuin bash-tulkki.

Käyttämällä zsh

Zsh-tulkki on toinen sh-tulkin klooni. Se on POSIX-yhteensopiva (kuten bash), mutta siinä on muita ominaisuuksia, kuten oikeinkirjoituksen tarkistus ja erilainen lähestymistapa komentorivimuokkaukseen. Zsh-tulkki oli oletusarvo varhaisissa käyttöjärjestelmissä. MacOS-järjestelmät X, mutta sisään nykyaikaiset järjestelmät Oletustulkki on bash.

Tässä osiossa kuvataan komentoja ja symboleja, joilla on erityismerkitys ja joiden avulla voit:

  • - löytää käyttämällä mallia ja käsitellä tiedostoryhmiä;
  • - suorita komento sisään tausta tai tiettyyn aikaan;
  • - suorittaa joukko komentoja peräkkäin;
  • - Ohjaa vakiotulo ja -lähtö;
  • - lopettaa käynnissä olevat ohjelmat.

SHELL-tulkki on kokonaisuuden kuori käyttöjärjestelmä ja suorittaa käyttöliittymätoimintoja käyttäjän ja käyttöjärjestelmän välillä. Se sieppaa ja tulkitsee kaikki käyttäjän komennot, luo ja näyttää vastausviestejä.

Käynnistyksen lisäksi vakiokomennot UNIX- ja suoritettavat tiedostot, tulkki sisältää oman kielensä, joka on ominaisuuksiltaan lähellä korkean tason ohjelmointikieliä. Tällä kielellä voit luoda ohjelmia (shell-tiedostoja, komentosarjoja), jotka voivat sisältää kielioperaattoreita ja UNIX-komentoja. Tällaiset tiedostot eivät vaadi käännöstä ja ne suoritetaan tulkitussa tilassa, mutta niillä on oltava suoritusoikeudet (asetetaan komennolla chmod).

Käyttäjä kommunikoi komentotulkin kanssa antamalla komentoja näppäimistöltä kehotteen (kutsun), yleensä "$" -symbolin, ilmestymisen jälkeen. Tulkki pitää syötettyä merkkijonoa joko nimenä sisäinen joukkue, tai suoritettavan tiedoston nimenä.

Shell-proseduuri (skripti) voidaan välittää argumentteja käynnistettäessä. Jokaiselle ensimmäisestä yhdeksästä argumentista on määritetty sijaintiparametri välillä $1 - $9 ($0 on itse proseduurin nimi), ja näillä nimillä niitä voidaan käyttää proseduurin tekstistä.

Ennen kuin tarkastelemme joitain shell-lauseita, meidän tulisi kiinnittää huomiota tiettyjen symbolien käyttöön komentoissa.

Alla on käytetyt metamerkit kuori:

* ? - voit määrittää lyhennettyjä tiedostonimiä, kun haet kuvion mukaan;

& - tarkoittaa, että komento suoritetaan taustalla;

; - erottaa komennot komentorivillä;

Ohittaa sellaisten merkkien erityismerkityksen kuin *, ?, [, ], &, ;,<,

"..." - peruuttaa avaruuden arvon erottimena ja erikoisarvona

kaikki merkit;

"..." - peruuttaa välilyönnin arvon erottimena ja kaikkien merkkien erityismerkityksen paitsi $ ja;

> - ohjaa komennon tulosteen tiedostoon;

< - uudelleenohjaa komentotulon tiedostosta;

>> - uudelleenohjaa komentotulosteen, johon pitäisi lisätä

loppu olemassa oleva tiedosto;

| - luo putken, joka ohjaa yhden komennon lähdön toisen tuloon

`...` - käytetään pareittain; antaa sinun käyttää komentotulostusta muodossa

komentorivin argumentit;

$ - käytetään sijaintiparametrien kanssa ja käyttäjän määrittämiä

muuttujan nimi, jota käytetään myös oletusarvoisesti

vihjeenä kuori.

Lisäksi tiedostojen kanssa työskentelyn helpottamiseksi lähes kaikki komentotulkit tulkitsevat "?"-merkit. ja "*", käyttämällä niitä tiedostonimimalleina (ns metahahmoja):

Esimerkki: *.c - määrittää kaikki tiedostot, joiden tunniste on "c";

pr???.* - määrittää tiedostot, joiden nimet alkavat kirjaimella "pr", sisältävät viisi merkkiä ja joilla on mikä tahansa tunniste.

Shell-muuttujat

Shell-kielen avulla voit työskennellä muuttujien kanssa (ilman ennakkoilmoitusta). Muuttujien nimet alkavat kirjaimella ja voivat sisältää kirjaimia ja numeroita. Pääsy muuttujiin alkaa "$"-merkillä.

Esimerkki. Siirrytään käyttäjän kotihakemistoon: cd $HOME

Tehtäväoperaattori. Arvojen määrittäminen muuttujille tapahtuu `="-operaattorilla ilman välilyöntejä.