1 00:00:00,000 --> 00:00:02,320 >> [Seminaari - Unix kuoret, ympäristöt] 2 00:00:02,320 --> 00:00:04,180 [Douglas Kline - Harvardin yliopisto] 3 00:00:04,180 --> 00:00:07,160 [Tämä on CS50. - CS50.TV] 4 00:00:07,160 --> 00:00:12,770 >> Päivän aihe on Unix shell. 5 00:00:12,770 --> 00:00:20,600 Olen Douglas Kline, asiantuntija, tai ainakin kohtuudella toimivaltaisten käyttäjä, kuoren. 6 00:00:20,600 --> 00:00:25,280 Kuori on käyttöliittymä käyttäjän tietokoneen käyttöjärjestelmä. 7 00:00:25,280 --> 00:00:29,580 Nimi on harhaanjohtava, koska päinvastoin kuin eläimen kuori, 8 00:00:29,580 --> 00:00:34,890 joka on kova ja suojaava, tietokoneen kuori mahdollistaa viestinnän. 9 00:00:34,890 --> 00:00:39,120 Niin huokoinen kalvo olisi luultavasti parempi metafora. 10 00:00:39,120 --> 00:00:44,500 >> Alkuperäinen kuori Unix on Bourne-tulkin. 11 00:00:44,500 --> 00:00:46,450 Bourne on kirjoitettu B-O-U-R-N-E. 12 00:00:46,450 --> 00:00:49,770 Bourne oli yksi alkuperäisistä kirjoittajista Unix, 13 00:00:49,770 --> 00:00:51,700 ja niin kuori on nimetty hänen mukaansa. 14 00:00:51,700 --> 00:00:54,850 Nimi että ammus komento on vain yksinkertaisesti sh. 15 00:00:54,850 --> 00:00:57,400 Se komennolla voit suorittaa. 16 00:00:57,400 --> 00:01:00,810 Kuori alkaa login. 17 00:01:00,810 --> 00:01:04,459 Kun kirjaudut sisään tietokoneeseen, kuori vain käynnistyy sinulle, 18 00:01:04,459 --> 00:01:06,820 ja sitähän vie komentoja. 19 00:01:06,820 --> 00:01:09,790 Se voi alkaa muina aikoina myös. 20 00:01:09,790 --> 00:01:16,780 Jos tuo esiin ikkunan kanssa ole mitään muuta merkintää, se alkaa kuori sinulle. 21 00:01:16,780 --> 00:01:20,450 Niin se on, että voit mennä ikkunan ja kirjoittamalla komentoja 22 00:01:20,450 --> 00:01:23,960 ja niin edelleen siellä, vaikka et ole kirjautunut sisään tuosta ikkunasta. 23 00:01:23,960 --> 00:01:26,670 Lisäksi, jos et etäkirjautumisen 24 00:01:26,670 --> 00:01:30,250 sitten se alkaa kuori etätietokoneessa. 25 00:01:30,250 --> 00:01:44,310 Ja se on mahdollista suorittaa komentoja ilman interaktiivisessa. 26 00:01:44,310 --> 00:01:48,990 Tämä voi tarkoittaa omassa nykyinen toiminta, 27 00:01:48,990 --> 00:01:50,700 ja se voi tarkoittaa myös kauko-ohjauksella. 28 00:01:50,700 --> 00:01:52,900 Voisit lähettää komennon toiseen tietokoneeseen, 29 00:01:52,900 --> 00:01:55,460 joka sisältää käynnistymässä komentotulkki. 30 00:01:55,460 --> 00:01:57,760 Itse asiassa se on sisällytettävä käynnistymässä komentotulkki 31 00:01:57,760 --> 00:02:01,740 vaikka se ei ole lopullinen tarkoitus. 32 00:02:05,310 --> 00:02:12,350 Kun jotain käynnistyy näin, se ei välttämättä aloita uusi kuori. 33 00:02:12,350 --> 00:02:17,430 Jos tuo uuden ikkunan, on mahdollista kertoa sen esiin editori 34 00:02:17,430 --> 00:02:18,940 tai jokin muu käsky. 35 00:02:18,940 --> 00:02:20,560 Tällöin editori aloittaa tyhjästä. 36 00:02:20,560 --> 00:02:22,930 Kun editori päättyy, ikkuna päättyy. 37 00:02:22,930 --> 00:02:24,620 Tämä on hieman epätavallista, mutta se voidaan tehdä. 38 00:02:24,620 --> 00:02:27,140 Näissä tapauksissa se ei ole kuori. 39 00:02:27,140 --> 00:02:31,890 Joten se ei ole välttämättä niin, että ikkuna tai jokin sellainen sovellus tuo esiin kuori. 40 00:02:31,890 --> 00:02:34,030 >> Shell jäsentää komentoja. 41 00:02:34,030 --> 00:02:40,900 Jäsentämiseen tarkoittaa myös eri elementtejä ja luokittelemalla ne. 42 00:02:40,900 --> 00:02:43,470 Sisällä komento, täydellinen merkkijono, joka kirjoitat, 43 00:02:43,470 --> 00:02:47,310 siellä on 1 tai enemmän yhden komennon. 44 00:02:47,310 --> 00:02:50,050 Muita tekijöitä voivat olla argumentteja. 45 00:02:50,050 --> 00:02:55,020 Ei voi olla myös erikoismerkkejä, jotka vaikuttavat täytäntöönpanon komennon. 46 00:02:55,020 --> 00:02:59,710 He voivat lähettää tuotoksen muualla kuin näytön 47 00:02:59,710 --> 00:03:01,750 jos komento olisi tavanomaisesti lähettää sen näytön. 48 00:03:01,750 --> 00:03:04,390 Se voi ohjata input, se voi tehdä muita asioita myös. 49 00:03:04,390 --> 00:03:08,120 On olemassa monia muita symboleja, merkkejä, ja niin edelleen. 50 00:03:08,120 --> 00:03:13,600 Jäsentämiseen liittyy havaita ja tulkita niitä asioita. 51 00:03:13,600 --> 00:03:19,560 >> Nyt jos ei ole enempää kysymyksiä, mikä on melko todennäköistä, sillä ei ole olemassa enemmän ihmisiä, 52 00:03:19,560 --> 00:03:24,620 jatkamme minun seuraava sivu täällä. 53 00:03:24,620 --> 00:03:29,170 >> Sanoin aiemmin, että Bourne kuori on alkuperäisen kuori. 54 00:03:29,170 --> 00:03:31,550 On toisia. 55 00:03:31,550 --> 00:03:34,520 Yksi on C-kuori. Komento on csh. 56 00:03:34,520 --> 00:03:36,830 Nimi C-kuori on vain sanaleikki. 57 00:03:36,830 --> 00:03:41,260 Tämä kuori otettiin käyttöön Berkeley Unix 1970-luvun puolivälissä. 58 00:03:41,260 --> 00:03:44,830 Berkeley Unix oli uraauurtava tapahtuma kehittämiseen Unix. 59 00:03:44,830 --> 00:03:48,770 Se oli valtava vallankumous ja sisältyi käyttöön tämän kuori. 60 00:03:48,770 --> 00:03:50,790 Syynä tähän sanaleikki, C-kuori, 61 00:03:50,790 --> 00:03:56,490 on, että C-kuori on joitakin ominaisuuksia se, joka muistuttaa C-kieltä, 62 00:03:56,490 --> 00:03:59,740 joka Bourne shell ei ole - 63 00:03:59,740 --> 00:04:02,140 tai sillä ei ollut tuolloin. 64 00:04:02,140 --> 00:04:05,190 Mukana on myös TC-kuori. 65 00:04:05,190 --> 00:04:07,360 Tämä on pääjoukko C-kuori. 66 00:04:07,360 --> 00:04:11,470 Se on lisäominaisuuksia, joista monet ovat hyödyllisiä interaktiiviseen käyttöön, 67 00:04:11,470 --> 00:04:16,050 kuten muistuttaa komentojen historiatoiminnon 68 00:04:16,050 --> 00:04:18,459 joissa pääsen kuvailla hieman myöhemmin - 69 00:04:18,459 --> 00:04:23,120 yksinkertaisella tavalla, mallinnettu editori. 70 00:04:23,120 --> 00:04:29,170 Se on myös siteet, joiden avulla voit sitoa lyhyt avain merkkijono enää komentoa. 71 00:04:29,170 --> 00:04:31,440 Emme aio olla joutumassa että tänään. 72 00:04:31,440 --> 00:04:33,650 Se on joitakin ominaisuuksia, jotka ovat hyödyllisiä ohjelmointia. 73 00:04:33,650 --> 00:04:37,020 Kuitenkin C-runko ei ole usein käytetty shell ohjelmointia. 74 00:04:37,020 --> 00:04:39,080 Kuori ohjelmia, jos et jo tiedä, 75 00:04:39,080 --> 00:04:41,690 ovat ohjelmia, jotka koostuvat kuori ominaisuuksia. 76 00:04:41,690 --> 00:04:43,220 Voisit ajaa näitä ohjelmia. 77 00:04:43,220 --> 00:04:46,760 Kirjoitat joukko kuorikomentoja tiedostoon ja suorittaa tiedoston. 78 00:04:46,760 --> 00:04:49,760 Sinun ei tarvitse kääntää sen. Tämä on tulkitseva kieli. 79 00:04:49,760 --> 00:04:57,320 Lause C-kuori on nyt epäselvä, koska se saattaa viitata vain alkuperäistä C-kuori, csh, 80 00:04:57,320 --> 00:05:01,200 tai kaikille C-kuoret, mukaan lukien tcsh. Se on vähän epäselvä. 81 00:05:01,200 --> 00:05:08,250 >> Myöhemmin kuori on Korn shell, ksh, nimetty ohjelmoija, Korn. 82 00:05:08,250 --> 00:05:14,160 Tämä kuori yrittänyt sisällyttää 1 kuori 83 00:05:14,160 --> 00:05:16,960 edut C-kuori interaktiiviseen käyttöön 84 00:05:16,960 --> 00:05:19,230 ja Bourne shell ohjelmointia. 85 00:05:19,230 --> 00:05:25,440 Sitä on käytetty interaktiivisessa joidenkin ihmisten - vähemmistön. 86 00:05:25,440 --> 00:05:32,050 Myöhemmin kuitenkin oli toinen käyttöönotto, Bash kuori, BASH, 87 00:05:32,050 --> 00:05:35,290 jälleen sanaleikki, Bourne-Again Shell. 88 00:05:35,290 --> 00:05:43,830 Se on laajennus Bourne shell. Korn Shell on myös. Molemmat ovat. 89 00:05:43,830 --> 00:05:48,100 Se on sama tavoitteiden Korn shell yhdistämismahdollisuutta C-komentotulkin 90 00:05:48,100 --> 00:05:50,980 ja Bourne Shellin etuja 1. kuori. 91 00:05:50,980 --> 00:05:56,810 Monet parannukset Korn shell sisältyvät myös Bash. 92 00:05:56,810 --> 00:06:00,710 Bash on kuitenkin enemmän, ja on sen vuoksi edullinen. 93 00:06:00,710 --> 00:06:05,180 Bourne-Again Shell ja Korn Shell kutsutaan Bourne-tyyppinen kuoret 94 00:06:05,180 --> 00:06:07,730 koska ne sisältävät Bourne shell ominaisuuksien, 95 00:06:07,730 --> 00:06:11,180 jotka ovat ristiriidassa joissakin suhteissa C-kuoret. 96 00:06:11,180 --> 00:06:15,520 On muitakin kuoret lisäksi niitä, jotkut on tarkoitettu rajoitettuun käyttöön, 97 00:06:15,520 --> 00:06:20,670 ehkä vain joitakin komentoja, ehkä erikoistunut tarkoituksiin, ei käytetä usein. 98 00:06:20,670 --> 00:06:24,240 >> Okei. Esityslistalla täällä. 99 00:06:31,300 --> 00:06:38,970 Bash shell on tullut liittyy erilaisia ​​Linux. 100 00:06:38,970 --> 00:06:41,550 En ole varma, jos se on totta jokaisen lomakkeen. 101 00:06:41,550 --> 00:06:43,280 On olemassa monia muotoja siellä ja en ole käyttänyt niitä kaikkia, 102 00:06:43,280 --> 00:06:46,870 mutta ne, jotka olen käyttänyt sitä on tullut liittyy siihen. 103 00:06:46,870 --> 00:06:49,670 Sikäli kuin tiedän, ei ole mitään Bash 104 00:06:49,670 --> 00:06:52,210 mikä tekee siitä enää yhteensopiva Linux 105 00:06:52,210 --> 00:06:55,020 kuin mikään muu yhdistelmä kuori ja käyttöjärjestelmä. 106 00:06:55,020 --> 00:06:59,690 Mielestäni tämä luultavasti vain kuvastaa taipumuksia ohjelmoijia. 107 00:06:59,690 --> 00:07:07,500 Että se on tullut liittyy Linux on toinen syy mieluummin Bash ja ksh 108 00:07:07,500 --> 00:07:11,820 koska asiat ovat todennäköisesti kirjoitettu siitä ja se on todennäköisesti levinnyt. 109 00:07:11,820 --> 00:07:15,410 Annan sinulle muita syitä, jotka myöhemmin. 110 00:07:15,410 --> 00:07:21,330 Bourne shell-skriptit pitäisi kulkea Korn shell tai Bash. 111 00:07:21,330 --> 00:07:22,650 Jos kirjoitat jotain Bourne shell, 112 00:07:22,650 --> 00:07:26,180 voit todennäköisesti suorittaa sille ksh tai bash. 113 00:07:26,180 --> 00:07:30,610 Korn komentoriviskriptejä todennäköisesti kulkea Bash, mutta en voi taata sitä. 114 00:07:30,610 --> 00:07:36,040 Myöhemmin täällä, C-shell-skriptit pitäisi kulkea TC-kuori. 115 00:07:38,850 --> 00:07:41,690 C-kuori on oikeastaan ​​koskaan laajasti käytetty scripting 116 00:07:41,690 --> 00:07:48,110 koska Bourne kuori ja myöhemmin Bourne-tyyppinen kuoret olivat parempi tähän tarkoitukseen. 117 00:07:48,110 --> 00:07:50,620 Niin, että ei todellakaan ole niin tärkeää. 118 00:07:50,620 --> 00:07:53,480 Täällä on melko paljon Bourne shell skriptejä, jotka oli kirjoitettu jo kauan sitten, 119 00:07:53,480 --> 00:07:56,860 ennen Korn kuori tai Bourne-Again Shell otettiin käyttöön. 120 00:07:56,860 --> 00:07:59,300 Ne ovat edelleen käytössä, osa käyttöjärjestelmien, 121 00:07:59,300 --> 00:08:01,590 ja niin löydät ne, jos tarkastellaan käyttöjärjestelmään 122 00:08:01,590 --> 00:08:03,760 tai vanhoja ohjelma-paketteja. 123 00:08:03,760 --> 00:08:12,840 >> Bash on jossain määrin tulossa eräänlainen lingua franca käyttöjärjestelmille. 124 00:08:12,840 --> 00:08:17,580 Se on jo laajennettu Windows ja VMS. 125 00:08:17,580 --> 00:08:20,440 VMS, jos et tiedä, on oma käyttöjärjestelmä 126 00:08:20,440 --> 00:08:25,480 Digital Equipment Corporation, joka on edelleen käytössä, pitkälti kulissien takana. 127 00:08:25,480 --> 00:08:29,250 Ja jos se tulee olla käytössä useita eri käyttöjärjestelmiä, 128 00:08:29,250 --> 00:08:31,110 todennäköisesti ihmiset yleensä siirtää sitä. 129 00:08:31,110 --> 00:08:33,840 Mutta tämä kehitys on suhteellisen uutta. 130 00:08:33,840 --> 00:08:39,490 Se on vasta alussa, joten en voi ennustaa, jos tämä osoittautuu todella olla sellainen lingua franca. 131 00:08:39,490 --> 00:08:43,539 Lisäksi, koska tiedosto polkunimissä ja kirjastot eroavat 132 00:08:43,539 --> 00:08:46,210 näiden eri käyttöjärjestelmiä, 133 00:08:46,210 --> 00:08:50,250 et ehkä voi kirjoittaa Bash script yksi käyttöjärjestelmä 134 00:08:50,250 --> 00:08:51,840 ja suorita se sitten toinen. 135 00:08:51,840 --> 00:08:54,440 Sinun pitäisi pystyä siirtää sen eri Unix, Linux 136 00:08:54,440 --> 00:08:59,020 Mac OS käyttöjärjestelmissä, mutta ei välttämättä Windowsin tai VMS. 137 00:08:59,020 --> 00:09:01,390 Saatat joutua muuttamaan tiedostopolku kuvaus, 138 00:09:01,390 --> 00:09:03,180 ja jotkut kirjastot voivat olla erilaisia, 139 00:09:03,180 --> 00:09:05,230 jotka voivat vaikuttaa siten, että jotkut komennot toimivat 140 00:09:05,230 --> 00:09:09,730 tai miten ne käsittelevät väitteet ja vastaavat. 141 00:09:09,730 --> 00:09:19,230 Sen lisäksi, että toinen varovaisuus tässä on, että ei ole mitään takeita 142 00:09:19,230 --> 00:09:23,570 että kaikki eri kuoret olen maininnut - Bourne shell, C-kuori, 143 00:09:23,570 --> 00:09:29,880 TC-kuori, Korn shell, Bourne-Again Shell - on saatavilla missään Unix 144 00:09:29,880 --> 00:09:33,750 tai Linux-tai Mac OS-tietokoneen. 145 00:09:33,750 --> 00:09:35,620 He eivät yksinkertaisesti voi olla siellä. 146 00:09:35,620 --> 00:09:38,300 Se on yksi varoituksia täällä. 147 00:09:38,300 --> 00:09:41,490 Se on valitettava rajoitus tässä, koska haluat asiat toimimaan kaikkialla, 148 00:09:41,490 --> 00:09:44,380 mutta valitettavasti et voi vedota tähän. 149 00:09:44,380 --> 00:09:47,230 >> Okei. Seuraava kukaan täällä. 150 00:09:50,280 --> 00:09:54,370 Oletetaan, että haluat kirjoittaa shell script, 151 00:09:54,370 --> 00:09:57,170 ohjelma koostuu shell-komentoja. 152 00:09:57,170 --> 00:10:01,200 Kirjoitat komentoja, laita ne tiedostoon ja suorittaa tiedoston. 153 00:10:01,200 --> 00:10:04,230 Mitä jos haluat sisällyttää argumentteja? 154 00:10:04,230 --> 00:10:09,650 Kun kyseessä on kuoren toiminnan argumentteja kutsutaan parametrit tai positioparametrit 155 00:10:09,650 --> 00:10:15,940 ja he koolle dollarin merkki ja numero, $ 1, 2 dollaria. 156 00:10:15,940 --> 00:10:27,000 Joten jos käsikirjoitus on tämä nimi, minun ensimmäinen argumentti saattaisi olla argumentti 1 157 00:10:27,000 --> 00:10:30,540 ja toinen voisi olla argumentti 2, 158 00:10:30,540 --> 00:10:34,110 ja sisällä minun käsikirjoituksen jos haluan viitata näitä asioita - 159 00:10:34,110 --> 00:10:36,810 Katsotaanpa poistaa tätä, koska en todellakaan aio käyttää sitä - 160 00:10:36,810 --> 00:10:42,160 sisällä minun kirjoitus olisin voinut 1dollari viitata arg1, 161 00:10:42,160 --> 00:10:45,890 2 dollaria, joka tulee ulos tällä tavalla, arg2. 162 00:10:45,890 --> 00:10:50,080 Joten ne symbolit ovat käytettävissä viitata väitteiden 163 00:10:50,080 --> 00:10:52,390 ja niitä koskevat kaikkia kuoret. 164 00:10:52,390 --> 00:10:56,520 Lisäksi on olemassa muita merkkejä. 165 00:10:56,520 --> 00:11:01,700 $ * Viittaa koko parametrilistaus, ne kaikki. 166 00:11:01,700 --> 00:11:05,390 $ # Viittaa argumenttien määrä. 167 00:11:05,390 --> 00:11:07,910 Jälleen tämä koskee kaikkia kuoret. 168 00:11:07,910 --> 00:11:15,540 Symbolien, * ja #, voidaan käyttää näissä merkityksissä muissa paikoissa myös. 169 00:11:15,540 --> 00:11:17,940 Me ei saada tuohon. 170 00:11:17,940 --> 00:11:20,460 >> Shell specifier linja. Mitä varten? 171 00:11:20,460 --> 00:11:27,760 Sanotaan olet kirjoittanut käsikirjoituksen ja se on tietyn kuori ja haluat käyttää sitä. 172 00:11:27,760 --> 00:11:33,500 Mistä tiedät mitä kuori käyttöjärjestelmä käyttää ajaa kirjoitus? 173 00:11:33,500 --> 00:11:37,230 Jossain vaiheessa voisi olettaa, että se kulkisi sitä Bourne shell 174 00:11:37,230 --> 00:11:39,440 jos ei sanonut toisin, 175 00:11:39,440 --> 00:11:41,730 mutta ihmiset eivät kirjallisesti skriptit Bourne shell että paljon enää 176 00:11:41,730 --> 00:11:43,750 ja et voi edes vedota tähän enää. 177 00:11:43,750 --> 00:11:48,740 Joten tässä meillä on kuori specifier rivi tästä. 178 00:11:48,740 --> 00:11:52,450 Joka määrittää Bash. 179 00:11:52,450 --> 00:11:56,750 Huomaa, että se määrittelee sen polun, / bin / bash. 180 00:11:56,750 --> 00:12:02,870 Jos tietokoneessa on Bash shell mutta ei bin hakemistoon, / bin, tämä ei toimi. 181 00:12:02,870 --> 00:12:06,870 Se on toinen karsinta, toinen varovaisuutta täällä. 182 00:12:06,870 --> 00:12:09,500 Ruutumerkillä on kommenttirivi luonnetta. 183 00:12:09,500 --> 00:12:12,300 Tämä koskee kaikkia kuoret. 184 00:12:12,300 --> 00:12:18,610 Erityisesti tässä tapauksessa, #! alussa käsikirjoituksen, on erikoistapaus. 185 00:12:18,610 --> 00:12:23,410 Joka määrittää kuori, jossa komentosarjan. 186 00:12:23,410 --> 00:12:30,230 Kuten sanoin, se ei ehkä ole samassa paikassa / bin. 187 00:12:30,230 --> 00:12:34,880 Lisäksi on olemassa toinen juttu täällä. 188 00:12:34,880 --> 00:12:41,250 Jos käytät vain ruutumerkillä ilman huutomerkki ja polun, 189 00:12:41,250 --> 00:12:44,640 että olisi ilmoitettava C-kuori. 190 00:12:44,640 --> 00:12:48,300 Kuitenkin, en suosittele tee sitä, koska en pysty takaamaan 191 00:12:48,300 --> 00:12:49,750 että toimii aina. 192 00:12:49,750 --> 00:12:52,220 Jos haluat C-shell, olisi parempi sanoa niin. 193 00:12:52,220 --> 00:12:58,450 Sitten on jotain melko sekava täällä. 194 00:12:58,450 --> 00:13:03,940 Jos käytät kuori specifier linja, kuten / bin / bash 195 00:13:03,940 --> 00:13:07,070 ja että Shell ei ole käytettävissä siellä, 196 00:13:07,070 --> 00:13:10,680 Ei ole sellaista asiaa kuin / bin / bash tiettyyn tietokoneeseen, 197 00:13:10,680 --> 00:13:14,330 koska se ei ole Bash tai koska se on eri paikassa, 198 00:13:14,330 --> 00:13:17,450 saat virhe kertoo, että skripti juoksi ei ole olemassa. 199 00:13:17,450 --> 00:13:21,510 Ja tietenkin oman käsikirjoituksen on olemassa, niin että virheilmoitus on sekava. 200 00:13:21,510 --> 00:13:24,810 Syystä, että käyttöjärjestelmä antaa sinulle, että virhe 201 00:13:24,810 --> 00:13:28,370 tai tarkemmin, että interaktiivisessa jossa käytät tämä antaa, että virhe, 202 00:13:28,370 --> 00:13:33,510 on, että se antaa komennon käytit, mikä on nimi käsikirjoituksen. 203 00:13:33,510 --> 00:13:36,920 Komennon tehokkaasti nimeltään kuori nimellä käsikirjoituksen. 204 00:13:36,920 --> 00:13:39,330 Siellä saat että sekava virheilmoituksen. 205 00:13:39,330 --> 00:13:42,980 Toinen tapa soittaa shell script 206 00:13:42,980 --> 00:13:45,910 on määrittämällä kuori komentoriviltä, ​​kuin täällä. 207 00:13:45,910 --> 00:13:52,510 Tämä on komento. Tämä kertoo ajaa Bash ja suorita minun script Bash. 208 00:13:52,510 --> 00:13:55,680 Se on etusija tarkenne linja, 209 00:13:55,680 --> 00:14:02,090 ja tämä on ominaisuus, jonka avulla voit saada aikaan vaihtelevia polkunimissä. 210 00:14:02,090 --> 00:14:04,840 Jos vain antaa käskyn, käyttöjärjestelmä etsii komennon 211 00:14:04,840 --> 00:14:06,410 eri paikoissa. 212 00:14:06,410 --> 00:14:08,820 Jos se on käytettävissä, se on löytää se. 213 00:14:08,820 --> 00:14:12,290 Tietokone löytää Bash missä se sijaitsee ja käyttää sitä, 214 00:14:12,290 --> 00:14:15,470 joten sinun ei tarvitse sitten olla huolissaan, jos se löytää sen. 215 00:14:15,470 --> 00:14:17,360 On mahdollisesti muita huolenaiheita täällä, 216 00:14:17,360 --> 00:14:20,830 sillä jos niitä on enemmän kuin 1 versio Bash, mikä on mahdollista, vaikka epätodennäköistä. 217 00:14:20,830 --> 00:14:23,540 Niin se on toinen tapa käsitellä näitä asioita. 218 00:14:23,540 --> 00:14:30,480 Materiaalia linjat voivat soittaa kaikki kuoren. 219 00:14:30,480 --> 00:14:34,480 He voivat myös soittaa asioita kuin kuoret. 220 00:14:34,480 --> 00:14:37,940 Esimerkkejä Minulla on täällä sed, joka on stream editor; 221 00:14:37,940 --> 00:14:39,900 awk, joka on malli käsittelyä kieli; 222 00:14:39,900 --> 00:14:43,680 ja Perl, erittäin hyvin kehittynyt skriptikieli. 223 00:14:43,680 --> 00:14:47,570 Jos laitat specifier viiva, joka osoittaa yksi niistä ohjelmien alussa, 224 00:14:47,570 --> 00:14:51,270 se menee suoraan tuohon ohjelmaan eikä lähteä kuori. 225 00:14:51,270 --> 00:14:54,030 Kyseiset ohjelmat ovat rajat kykyjään. 226 00:14:54,030 --> 00:14:58,790 Perl on erittäin pätevä. Sed on editori. Se voi tehdä asioita kuin vain muokkaamalla. 227 00:14:58,790 --> 00:15:03,300 Mutta se voi olla vaikea ohjelmoida että. 228 00:15:03,300 --> 00:15:09,670 Lisäksi kulkee argumentteja ja juttuja käsikirjoitus on joko mahdotonta tai sekava. 229 00:15:09,670 --> 00:15:15,030 Joten niissä tapauksissa, joissa awk tai sed, se on ainakin minun kokemukseni, 230 00:15:15,030 --> 00:15:18,910 parempi kirjoittaa shell script ja puhelun awk tai sed päässä komentotulkkiskripti 231 00:15:18,910 --> 00:15:24,660 sijaan soittamalla awk tai sed kuin käsikirjoituksen määrittelyksi linja. 232 00:15:24,660 --> 00:15:26,980 Perl on erittäin monipuolinen kieli, kuten sanoin. 233 00:15:26,980 --> 00:15:30,050 Et voi ajaa vuorovaikutteisia komentoja perl, 234 00:15:30,050 --> 00:15:32,660 mikä tarkoittaa, että et voi testata osia skriptejä, olet kehittämässä 235 00:15:32,660 --> 00:15:33,970 ajamalla niitä vuorovaikutteisesti. 236 00:15:33,970 --> 00:15:36,160 Kuitenkin se on erittäin kykenevä kieli 237 00:15:36,160 --> 00:15:40,960 ja on kehittynyt hyvin laajalti käytetty työkalu. 238 00:15:40,960 --> 00:15:45,720 Se on vain hieman sulkeissa huomautuksen määrittelyksi linjat. 239 00:15:45,720 --> 00:15:50,610 >> Kaikissa tai lähes kaiken Linux - taas, en voi olla varma, että kaikki - 240 00:15:50,610 --> 00:15:57,900 ja Mac OS Jos kirjoitat csh saat tcsh, 241 00:15:57,900 --> 00:16:00,570 ja jos kirjoitat sh saat bash. 242 00:16:00,570 --> 00:16:05,020 He yrittivät siellä antaa sinulle kehittyneempiä versioita näistä kuoret, 243 00:16:05,020 --> 00:16:07,940 mutta tämä voi olla hämmentävää. 244 00:16:07,940 --> 00:16:16,720 Jos kirjoitat käsikirjoituksen avulla tcsh tai Bash tarjolla, mutta peräänkuuluttivat csh tai sh 245 00:16:16,720 --> 00:16:22,230 ja yritä sitten suorittaa sen tietokoneeseen, jossa ei ole tcsh tai Bash, 246 00:16:22,230 --> 00:16:25,050 saatat saada joitakin virheitä, jos on komennot siellä 247 00:16:25,050 --> 00:16:27,970 joihin nämä kuoret eivät tunnista. 248 00:16:27,970 --> 00:16:34,120 Lisäksi, olet ehkä kutsuttu shellin paikalliselle tietokoneelle 249 00:16:34,120 --> 00:16:37,700 jossa se sh tai csh ja sitten saada kehittyneempiä kuoret. 250 00:16:37,700 --> 00:16:41,440 Et voi edes ajatella, että käytät kehittyneempiä kuori. 251 00:16:41,440 --> 00:16:45,670 Joten tämä on potentiaalinen sudenkuoppa. 252 00:16:45,670 --> 00:16:50,290 Miten on osoitettu, että jos kirjoitat sh saat Bash, 253 00:16:50,290 --> 00:16:55,580 Jos kirjoitat csh saat tsch? 254 00:16:55,580 --> 00:16:59,940 On asioita näissä tietokoneissa nimellä linkit 255 00:16:59,940 --> 00:17:06,460 joka voidaan liittää tiedostoon nimet viittaavat sama asia. 256 00:17:06,460 --> 00:17:12,180 Se voi olla joko 2 nimiä samalle tai tiedoston, jonka tarkoituksena on viitata toiseen tiedostoon. 257 00:17:12,180 --> 00:17:17,550 Niitä kutsutaan kovaa ja symbolisia linkkejä. Emme menossa tuohon enää tänään. 258 00:17:17,550 --> 00:17:21,619 Saattaa olla myös erillisiä tiedostoja - 1 tiedosto sh, 1 tiedosto Bash - 259 00:17:21,619 --> 00:17:23,880 mutta molemmat ajaa Bash. 260 00:17:23,880 --> 00:17:29,350 Sitten on toinen karsinta täällä. 261 00:17:29,350 --> 00:17:42,640 Jos soitat johonkin näistä kuoret yhdellä nimellä, 262 00:17:42,640 --> 00:17:46,640 luulisi saat luultavasti samat toiminnot kuin kutsuen sitä toisella nimellä. 263 00:17:46,640 --> 00:17:49,700 No, se ei itse asiassa ole välttämättä totta. 264 00:17:49,700 --> 00:17:55,020 Nämä komennot voi tutkia nimi, jolla heidät kutsuttiin 265 00:17:55,020 --> 00:18:00,020 ja ne voivat sen perusteella, että nimi, käyttäytyvät eri tavalla. 266 00:18:00,020 --> 00:18:02,740 Ei voi olla kysymyksiä yrittää noudattaa standardia. 267 00:18:02,740 --> 00:18:06,060 Jotkut teistä ovat ehkä kuulleet POSIX-standardin tai toisella, 268 00:18:06,060 --> 00:18:08,730 ehkä muita ominaisuuksia. 269 00:18:08,730 --> 00:18:14,520 Tämä voidaan valita joskus komentoriviargumentteja 270 00:18:14,520 --> 00:18:17,310 tai asettamalla Kuoren muuttujia. 271 00:18:17,310 --> 00:18:22,170 Soittaminen se sh tai bash voi todella johtaa eri toteutus 272 00:18:22,170 --> 00:18:25,300 vaikka se on sama tiedosto, jonka olet täytäntöönpanosta. 273 00:18:25,300 --> 00:18:31,800 Toinen asia harkita, että vaikka toiseen tietokoneeseen on tcsh tai Bash, 274 00:18:31,800 --> 00:18:35,310 jos ne eivät liity, koska ne ovat paikalliselle tietokoneelle 275 00:18:35,310 --> 00:18:37,990 jos sinulla on Linux-tai Mac OS-koneelle, 276 00:18:37,990 --> 00:18:45,630 sitten taas saat kuori, joka soitat sh tai csh, ei yksi että saatat mieluummin. 277 00:18:50,430 --> 00:19:01,130 Nykyisen Bourne shell on parannuksia vähemmän kuin Bash 278 00:19:01,130 --> 00:19:06,100 mutta ohi kuin alkuperäisessä Bourne shell. 279 00:19:06,100 --> 00:19:09,690 Tämän seurauksena on, että vaikka nykyinen Bourne kuori, sh, 280 00:19:09,690 --> 00:19:14,560 vaikka se ei ole Bash, muistuttaa C-kieltä enemmän kuin C-kuori tekee. 281 00:19:14,560 --> 00:19:20,460 Se ei ollut totta, kun C-kuori oli ensin luotu, mutta se on kehittynyt niin. 282 00:19:20,460 --> 00:19:26,560 Saatat huomata tässä, että kaikki nämä kuori nimet paitsi Bourne shell 283 00:19:26,560 --> 00:19:30,640 on jotain mitkä kuori ne ovat - csh, bash - 284 00:19:30,640 --> 00:19:32,550 mutta Bourne kuori on vain sh. 285 00:19:32,550 --> 00:19:34,910 Miksi? Se oli alkuperäinen kuori. 286 00:19:34,910 --> 00:19:37,770 Se oli kuori sitten, ei kuori, 287 00:19:37,770 --> 00:19:41,090 ja koska se oli kuori, ei ollut mitään syytä erottaa sen toisesta kuori. 288 00:19:41,090 --> 00:19:45,030 Joten siksi se on, että nimi ja tekee edelleen. 289 00:19:50,630 --> 00:19:58,990 >> Tämä top tässä linjan salasanan tietokannasta tili Minulla on siellä 290 00:19:58,990 --> 00:20:01,680 toisessa tietokoneessa. 291 00:20:01,680 --> 00:20:08,300 Aion yrittää saada, että nimen, jotta voit nähdä, että osa lopussa, kuori. 292 00:20:09,720 --> 00:20:15,450 Tunnussanatietokantaa pitää login ominaisuudet kaikille käyttäjille. 293 00:20:15,450 --> 00:20:20,330 Alussa on käyttäjätunnus, jossa voit nähdä viimeisen 2 kirjainta minun nyt. 294 00:20:20,330 --> 00:20:23,970 Pellot erotetaan kaksoispisteellä. 295 00:20:23,970 --> 00:20:28,210 Viimeinen kenttä, kuten näette, on bin / tcsh, kuori. 296 00:20:28,210 --> 00:20:30,230 Se kuori määrittelyksi. 297 00:20:30,230 --> 00:20:33,240 Siellä on jotain mielenkiintoista täällä. 298 00:20:33,240 --> 00:20:36,950 Kun Unix oli ensimmäinen kehitetty, oli vain 1 kuori, 299 00:20:36,950 --> 00:20:38,350 joten ei ollut valinnanvaraa siellä. 300 00:20:38,350 --> 00:20:45,570 Joten miksi he sallivat kentän salasanan tietokantaan määrittää kuori? 301 00:20:45,570 --> 00:20:47,920 En tiedä, mutta se on onni, että he tekivät. 302 00:20:47,920 --> 00:20:52,030 Se on melko vaikea tehdä muutoksia salasana tietokannan muodossa 303 00:20:52,030 --> 00:20:54,420 koska monet ohjelmat viitata sen muoto 304 00:20:54,420 --> 00:20:57,720 ja se täytyy kirjoittaa uudelleen. 305 00:20:57,720 --> 00:21:04,130 Se on osuva tai satunnaiset kehitystä, että ne sisältyvät tällä alalla. 306 00:21:04,130 --> 00:21:12,780 Tällainen salasana tiedosto linja on käytössä kaikilla Unix-ja Linux-tietokoneet sikäli kuin tiedän. 307 00:21:12,780 --> 00:21:14,650 Mac on oma järjestelmänsä. 308 00:21:14,650 --> 00:21:17,810 Se on itse asiassa salasanan tiedoston rivit tässä muodossa, 309 00:21:17,810 --> 00:21:21,060 mutta se ei ole, jos käyttäjä ominaisuudet on määritelty. 310 00:21:21,060 --> 00:21:24,200 Toinen sulkulausekkeesta huomautuksen siellä. 311 00:21:36,470 --> 00:21:46,020 >> Jos soitat kuori, voit kutsua sitä osa-kuori nykyisen kuoret. 312 00:21:46,020 --> 00:21:50,480 Joten jos menen tänne, nyt päästä eroon näistä asioista. 313 00:21:50,480 --> 00:21:53,350 Täällä olen C-kuori. 314 00:21:56,830 --> 00:22:01,200 Muuttuja, joka tarkasti tunnistaa minun kuori, 315 00:22:01,200 --> 00:22:04,300 oikeastaan ​​ei ole aina luotettava tapa määritellä, mitä kuori käytät, 316 00:22:04,300 --> 00:22:06,220 mutta tässä tapauksessa se on. 317 00:22:06,220 --> 00:22:08,040 Mitä jos en kirjoita - 318 00:22:09,970 --> 00:22:12,470 Nyt olen Bash. 319 00:22:12,470 --> 00:22:19,540 Jotkut asiat tulevat olemaan sama. ls kertoo minulle minun komentoja. 320 00:22:19,540 --> 00:22:24,500 Jos en keskeyttää takaisin minun C-kuori, ls, sama. Oikea? 321 00:22:24,500 --> 00:22:28,890 FG, etualalla, takaisin minun Bash shell. 322 00:22:28,890 --> 00:22:38,290 pwd, nykyisen hakemiston, takaisin C-kuori. 323 00:22:38,290 --> 00:22:43,180 pwd, eri hakemistoon - oikeastaan ​​ole eri hakemiston tässä tapauksessa. 324 00:22:43,180 --> 00:22:45,110 Se on samassa hakemistossa. 325 00:22:45,110 --> 00:22:50,000 Sanotaan Haluan soittaa komento tässä: missä ls. 326 00:22:50,000 --> 00:22:52,140 Mitä se tekee? 327 00:22:52,140 --> 00:22:53,670 Se kertoo minulle, missä ls komento, 328 00:22:53,670 --> 00:22:56,670 joka antaa minulle hakemistolistauksessa, sijaitsee ls. 329 00:22:56,670 --> 00:23:01,460 Mennään takaisin Bash shell. Kokeillaan sama asia. 330 00:23:01,460 --> 00:23:05,830 Hmm, mielenkiintoista siellä, missä: komento ei löytynyt. 331 00:23:05,830 --> 00:23:07,400 Miksi näin? 332 00:23:07,400 --> 00:23:11,570 Jossa komento on rakennettu sisään C-kuori. 333 00:23:11,570 --> 00:23:15,630 Tämä ei ole komento, joka on luettava muistiin jostain muualta ja teloitettiin. 334 00:23:15,630 --> 00:23:20,310 C-shell ajetaan se siirtämällä suorituksen osaksi omaa koodia 335 00:23:20,310 --> 00:23:22,790 ja se ei ole Bash shell. 336 00:23:22,790 --> 00:23:25,710 Joten Bash, joilla ei ole tällaista sisäänrakennettu komento, näyttää se ei löydä sitä, 337 00:23:25,710 --> 00:23:27,720 ja saamme virhe. 338 00:23:27,720 --> 00:23:32,290 Joten ei meillä Bash shell running C-kuori, ja kutsumme että sub-kuori. 339 00:23:32,290 --> 00:23:38,480 Ja mikäli olet kiinnostunut, Bash shell on oma tapa sijoittaa komentoja. 340 00:23:38,480 --> 00:23:42,590 hajakoodatun viittaa siihen, että se voidaan toteuttaa nopeammin, 341 00:23:42,590 --> 00:23:44,960 löydetään nopeammin. 342 00:23:44,960 --> 00:23:48,610 Se on yksi parannuksia rakennettu joihinkin näistä kuoret. 343 00:23:50,220 --> 00:23:54,200 >> Bourne-tyyppinen kuoret ovat edullisia ohjelmointiin. 344 00:23:54,200 --> 00:23:57,300 He ovat valvonnan rakenteita kuten silmukoita, ehtolauseet, 345 00:23:57,300 --> 00:24:00,240 eräänlainen komennot, joita voisi käyttää ohjelmointikieliä kuten C 346 00:24:00,240 --> 00:24:04,190 tai mitä tahansa kieltä. Ehkä olet Java-ohjelmointi tai mitä tahansa. 347 00:24:04,190 --> 00:24:06,460 Kuoret ovat nekin. 348 00:24:06,460 --> 00:24:11,790 Bourne-tyyppinen kuoret, erityisesti Bash, on enemmän 349 00:24:11,790 --> 00:24:15,730 ja ne on suunniteltu enemmän joustavuutta. 350 00:24:15,730 --> 00:24:20,700 Bash shell on taulukot. Alkuperäinen Bourne shell ei. 351 00:24:20,700 --> 00:24:26,130 Niin, että voi olla huomattavasti edullista ohjelmointia. 352 00:24:26,130 --> 00:24:29,810 C-shell itse ei ole taulukoita, mutta ei ole paljon näitä muita ominaisuuksia. 353 00:24:29,810 --> 00:24:33,450 Bourne-tyyppinen kuoret tulee suorittaa nopeammin 354 00:24:33,450 --> 00:24:36,520 jos heillä ei ole ominaisuuksia, jotka on tarkoitettu interaktiiviseen käyttöön. 355 00:24:36,520 --> 00:24:39,340 Lataat asioita alas yksi tarkoitus, tämä lataa ne alas toiseen tarkoitukseen. 356 00:24:39,340 --> 00:24:41,520 Siinä on se kompromissi siellä. 357 00:24:41,520 --> 00:24:44,510 Ne ominaisuudet, jotka on tarkoitettu interaktiiviseen käyttöön 358 00:24:44,510 --> 00:24:46,920 todella vähän tai ei lainkaan käyttöä scripting. 359 00:24:46,920 --> 00:24:52,160 On mahdollista käyttää interaktiivista ala-kuori aivan kuten yksi aloitin siellä 360 00:24:52,160 --> 00:24:57,780 kokeilla komentoja, jotka aiot käyttää script. 361 00:24:57,780 --> 00:25:01,180 Se mitä et voi tehdä Perl. Voit tehdä sen kuoret. 362 00:25:01,180 --> 00:25:04,850 Jopa rakenteita kuten silmukoita ja niin edelleen voidaan suorittaa vuorovaikutteisesti. 363 00:25:04,850 --> 00:25:07,000 Ne ovat joskus hyödyllisiä ajaa vuorovaikutteisesti, 364 00:25:07,000 --> 00:25:10,180 mutta todennäköisemmin käytät niitä kehittämään script. 365 00:25:15,690 --> 00:25:17,400 >> Aliakset. 366 00:25:17,400 --> 00:25:21,630 Tämä tulee olemaan noin C-kuori. 367 00:25:23,270 --> 00:25:27,570 Historia mekanismi, jossa saat takaisin aikaisemmin komentoja 368 00:25:27,570 --> 00:25:30,340 tai niiden osia, jotka olet jo suorittanut. 369 00:25:30,340 --> 00:25:33,680 Jälleen noin C-kuori, Bourne Shell ja Korn Shell on näitä asioita, 370 00:25:33,680 --> 00:25:35,620 mutta en aio päästä niihin. 371 00:25:35,620 --> 00:25:40,340 Joten tässä on muutamia hyödyllisiä aliaksia, että minulla on. 372 00:25:43,100 --> 00:25:44,880 Kirjoittamisen sijaan ls - se on yleinen komento - 373 00:25:44,880 --> 00:25:47,620 kirjoita l ja säästää 1 merkki. 374 00:25:47,620 --> 00:25:50,600 ls eri vaihtoehtoja, kaikki nämä työt. 375 00:25:50,600 --> 00:25:54,460 Huomaa, että nämä määritelmät ovat lainauksia heidän ympärillään. 376 00:25:54,460 --> 00:25:57,520 Näissä tapauksissa lainaukset eivät ole tarpeen. 377 00:25:57,520 --> 00:26:00,100 Jos voit määritellä niitä aliaksia ilman lainausmerkkejä, se olisi silti toimia. 378 00:26:00,100 --> 00:26:02,910 Niitä suositellaan. 379 00:26:02,910 --> 00:26:04,900 On tilanteita, joissa et voi käyttää lainaus 380 00:26:04,900 --> 00:26:08,050 koska haluat jotain tapahtuu joka lainaus estäisi. 381 00:26:08,050 --> 00:26:11,210 Joskus voit lainata osa määritelmää, mutta kaikki eivät sitä. 382 00:26:11,210 --> 00:26:17,010 On myös yleisesti suositeltavaa käyttää puolilainausmerkkejä sijaan lainausmerkkeihin. 383 00:26:17,010 --> 00:26:19,750 Lainausmerkit olla vaikutuksia variable, 384 00:26:19,750 --> 00:26:22,950 erityisesti jolloin ne arvioidaan sen sijaan pysäyttää se. 385 00:26:22,950 --> 00:26:25,910 Miksi haluamme lopettaa arviointiin? 386 00:26:25,910 --> 00:26:28,710 Ja miten lainauksia tehdä meille? 387 00:26:28,710 --> 00:26:32,600 >> Tässä on komento, joka saatat löytää mielenkiintoisia. 388 00:26:32,600 --> 00:26:35,470 "Ls g * ' 389 00:26:35,470 --> 00:26:37,640 g *, kuten varmasti tiedätte, on asteriskia ilme 390 00:26:37,640 --> 00:26:40,290 kaikkien tiedostojen nimet alkavat g. 391 00:26:40,290 --> 00:26:46,410 Jos minä vain kirjoitan komennon ls g *, saan luettelo kaikista niistä nimistä minun hakemistossa. 392 00:26:46,410 --> 00:26:50,870 Jos minä määritellä, että alias koska se on täällä lainauksia, 393 00:26:50,870 --> 00:26:56,990 se ajaa komennon nykyisessä hakemistossa, jossa käytät sitä. 394 00:26:56,990 --> 00:27:01,250 Mutta jos suoritat alias määritelmä ilman lainausmerkkejä, 395 00:27:01,250 --> 00:27:09,620 se arvioi asteriskia g *, kun se suoritetaan tänä merkittävänä komentoa. 396 00:27:09,620 --> 00:27:14,400 Joten määritelmä alias tulee ls seuraa luettelo tiedostot hakemistoon 397 00:27:14,400 --> 00:27:16,310 jossa alias komento suoritetaan, 398 00:27:16,310 --> 00:27:19,180 riippumatta siitä, missä olet itse aikoo suorittaa komennon. 399 00:27:19,180 --> 00:27:26,360 Tämä ei ole paljon käyttöä, ja puolilainausmerkkejä estää arvioinnin tähdellä. 400 00:27:26,360 --> 00:27:30,780 Joten juuri saada määriteltävää ls g *. 401 00:27:30,780 --> 00:27:35,510 Sitten kun suoritat alias, LGS, se sitten tuo, että ulos. 402 00:27:35,510 --> 00:27:40,490 Nyt ei ole lainausmerkkejä, ja se arvioi tähti kun suoritat alias komento. 403 00:27:40,490 --> 00:27:43,900 Joten se on yksi asia. 404 00:27:43,900 --> 00:27:46,590 Lainausmerkkeihin olisi, että sama vaikutus täällä, 405 00:27:46,590 --> 00:27:50,580 mutta muitakin tapauksia, joissa lainausmerkit eivät toimi niin hyvin. 406 00:27:50,580 --> 00:27:52,450 >> Tässä on toinen. 407 00:27:52,450 --> 00:27:54,270 Saatat tietää grep-komentoa. 408 00:27:54,270 --> 00:28:02,110 Grep-komentoa voidaan käyttää skannata tiedoston radat, joilla on tiettyjä merkkijonoja. 409 00:28:02,110 --> 00:28:10,350 Joten mennään tänne ja minä poistua minun Bourne shell. 410 00:28:23,570 --> 00:28:25,450 Okei. Tässä tiedosto. 411 00:28:25,450 --> 00:28:31,490 Sanotaan se grep abc jousille. Siinä se on. 412 00:28:31,490 --> 00:28:37,930 Jos teen grep zddd, en saa mitään. Okei. 413 00:28:37,930 --> 00:28:40,960 Joten se toteaa merkkijono, se ilmoittaa, se ei löydä, se ei ilmoita siitä. 414 00:28:40,960 --> 00:28:44,930 Se tuottaa mitään linjaa, joka on, että merkkijono sitä. 415 00:28:44,930 --> 00:28:49,080 On kaikenlaisia ​​vaihtoehtoja täällä joka löytyy asiakirjoissa. 416 00:28:49,080 --> 00:28:52,160 Tässä yksi tapa tehdä se. 417 00:28:52,160 --> 00:29:03,290 Entä tämä, alias grabc "grep abc '? 418 00:29:03,290 --> 00:29:09,000 Se menee sisällyttää 1 argumentti alias on määritelty. 419 00:29:09,000 --> 00:29:26,300 Joten jos teen sen täällä, nyt jos teen grabc, 420 00:29:26,300 --> 00:29:30,620 nyt alias sisältää yli yksinkertaisen komennon. Se on myös argumentti. 421 00:29:30,620 --> 00:29:32,190 Niin pitkälle, että toimii. 422 00:29:32,190 --> 00:29:38,590 Minulla on toinen komento täällä, tämä, joten ne ovat erilaisia ​​jousille siellä 423 00:29:38,590 --> 00:29:46,790 ja osoittavat, että tämä ei löydä sieltä mitään, koska se ei vastaa. 424 00:29:46,790 --> 00:29:56,180 >> Mitä jos haluan sisällyttää alias määritelmä tiedosto, aion etsiä 425 00:29:56,180 --> 00:30:02,970 ja haluan antaa argumenttina alias merkkijonon Etsin? 426 00:30:02,970 --> 00:30:08,040 Voisin sanoa abc argumenttina minun alias, 427 00:30:08,040 --> 00:30:10,870 mutta alias jo määritetty tiedosto. 428 00:30:10,870 --> 00:30:15,710 Ja se jos tämä ilmaus tulee sisään 429 00:30:20,430 --> 00:30:25,270 Ilmoitus tästä on grep aivan kuten ennenkin. 430 00:30:25,270 --> 00:30:28,130 Meillä on tiedosto täällä, jousille. 431 00:30:28,130 --> 00:30:35,610 \! ^, Eräänlainen outo ilmaus, oletan, jos et ole nähnyt tämän ennenkin. 432 00:30:35,610 --> 00:30:39,920 Huutomerkki on osa C-shell historiaa mekanismi. 433 00:30:39,920 --> 00:30:45,220 Se voi muistaa aiemmin komentoja, se voi muistaa perusteluihin kuin komentoja ja niin edelleen. 434 00:30:46,760 --> 00:31:01,570 Historia mekanismia käytetään osana aliasing. 435 00:31:01,570 --> 00:31:07,390 Jos määrität rivin jälkeen huutomerkki, se viittaa, että linja historialuettelo 436 00:31:07,390 --> 00:31:11,910 jota ei päästä nyt, koska se on aivan toinen aihe. 437 00:31:11,910 --> 00:31:16,280 On mahdollista määritellä osa linja. 438 00:31:16,280 --> 00:31:22,950 Niin! 03:02 olisi toinen argumentti komennon numero 3. 439 00:31:22,950 --> 00:31:30,430 Caret täällä tämä ilmaus tarkoittaa ensimmäinen argumentti. 440 00:31:30,430 --> 00:31:34,410 Jos et anna sille viitteitä mikä komento olet viittaavat, 441 00:31:34,410 --> 00:31:37,300 se viittaa välittömästi edellisen komennon, 442 00:31:37,300 --> 00:31:41,990 ja caret on symboli ensimmäinen argumentti. 443 00:31:41,990 --> 00:31:46,820 Koska se on sirkumfleksin eikä numeron, sinun ei tarvitse käyttää paksusuoli, 444 00:31:46,820 --> 00:31:52,660 niin! ^ tarkoittaa ensimmäistä argumentti edellisen komennon. 445 00:31:52,660 --> 00:31:55,020 Hieman sekaisin täällä. 446 00:31:55,020 --> 00:31:58,450 Tässä tapauksessa, kun käytät tätä alias määritelmä, 447 00:31:58,450 --> 00:32:04,650 historia viittaus viitataan komentoja jossa alias käytetään. 448 00:32:04,650 --> 00:32:08,470 Joten tämä on menossa takaisin 1 komennon historia toimintaa, 449 00:32:08,470 --> 00:32:11,810 mutta alias toimintaa se viittaa komennon, jossa kirjoitetaan, 450 00:32:11,810 --> 00:32:14,780 sanovat, grstrings_file. 451 00:32:17,440 --> 00:32:20,240 Meillä on lainauksia täällä sitä. Mikä on kenoviiva varten? 452 00:32:20,240 --> 00:32:30,810 Tässä tapauksessa, kuten muuallakin, emme halua suorittaa historiatoiminto 453 00:32:30,810 --> 00:32:33,680 samalla kun määritellään alias. 454 00:32:33,680 --> 00:32:37,900 Jos meillä ei ole kenoviiva siellä, kuori vetäisi ensimmäisen argumentin 455 00:32:37,900 --> 00:32:41,870 komennon juuri ennen kuin se juoksi tämän alias komento, jota me emme halua. 456 00:32:41,870 --> 00:32:47,520 Haluamme, että tämä rakennetaan alias komento soittaa väitteen myöhemmin. 457 00:32:47,520 --> 00:32:53,550 Puolilainausmerkkejä eivät välty huutomerkki, historia viite. 458 00:32:53,550 --> 00:32:57,450 Ehkä tiedät ilmaisun paeta tarkoittaa muuttaisi jotain. 459 00:32:57,450 --> 00:33:00,260 Tässä tapauksessa se tarkoittaa lopettaa jotain, joilla on erityinen merkitys. 460 00:33:00,260 --> 00:33:03,030 Huutomerkki n erityinen merkitys on historiaa. 461 00:33:03,030 --> 00:33:05,790 Paeta ja se ei ole, että merkitystä. 462 00:33:05,790 --> 00:33:08,080 Lainaukset eivät tee niin, kenoviiva tekee. 463 00:33:08,080 --> 00:33:11,900 Joten me todellisuudessa käyttävät 2 tasoa paeta täältä. 464 00:33:23,500 --> 00:33:29,620 Aion siirtää tämän käskyn toisessa ikkunassa kirjoittamatta sitä 465 00:33:29,620 --> 00:33:35,210 käyttämällä näitä editointitoimintoja, joka saattaa olla hyödyllinen. 466 00:33:40,620 --> 00:33:42,460 Jotain muuta tässä minä näytän sinulle. 467 00:33:42,460 --> 00:33:46,730 Jos et kirjoita alias ilman argumentteja, se kertoo kaikki argumentit. 468 00:33:46,730 --> 00:33:48,640 Tämä on nippu muunnokset minulla oli jo täällä 469 00:33:48,640 --> 00:33:53,400 paitsi ne, jotka olen käyttänyt täällä tänään. 470 00:33:53,400 --> 00:34:00,220 Mutta jos minä kirjoita nimen kanssa alias, se kertoo minulle, mitä se tarkoittaa. 471 00:34:00,220 --> 00:34:03,390 Huomaa, että lainausmerkit ovat poissa ja kenoviiva on mennyt. 472 00:34:03,390 --> 00:34:08,620 Tämä merkkijono tässä on tulos, joka alias määritelmä, 473 00:34:08,620 --> 00:34:12,199 ja nyt se on vain! ^ siinä. 474 00:34:12,199 --> 00:34:19,150 Tämä on menossa katsomaan tiedoston jousille mitään. 475 00:34:19,150 --> 00:34:34,900 Joten jos en grstrings_file jouset, en anna sitä mitään etsiä siellä, 476 00:34:34,900 --> 00:34:37,429 mutta se etsii jousille. 477 00:34:37,429 --> 00:34:42,330 Se ei löytänyt sanajonoista tiedoston jouset, mutta se ei löydä abc. 478 00:34:42,330 --> 00:34:46,770 Ja se ei löydä sitä. 479 00:34:46,770 --> 00:34:52,330 Joten tässä me annamme argumentti, joka osuu osaksi määritelmää alias, 480 00:34:52,330 --> 00:34:55,530 , joka työnnetään siihen. 481 00:34:55,530 --> 00:34:58,540 Siellä tämä ilmaus on peräisin. 482 00:34:58,540 --> 00:35:00,240 Voit käyttää yli 1. 483 00:35:00,240 --> 00:35:03,170 Caret on symboli ensimmäinen argumentti. 484 00:35:03,170 --> 00:35:07,510 Jos halusi käyttää toisen väitteen, voisitte sitten sanoa: 2. 485 00:35:07,510 --> 00:35:11,250 Ei ole erityistä symboli toinen argumentti. 486 00:35:11,250 --> 00:35:14,790 Ja koska käytät numero, sinun pitäisi käyttää paksusuolen. 487 00:35:14,790 --> 00:35:17,220 On kuitenkin toinen vaihtoehto tässä. 488 00:35:17,220 --> 00:35:21,220 Dollarin merkki tarkoittaa viimeinen argumentti. 489 00:35:21,220 --> 00:35:23,320 Ja koska tämä on symboli, voit jättää paksusuolen. 490 00:35:23,320 --> 00:35:25,870 Joten se olisi viimeinen argumentti luettelossa. 491 00:35:25,870 --> 00:35:27,900 Ja siellä on myös, että yksi. 492 00:35:27,900 --> 00:35:31,380 Tähdellä tarkoittaa kaikkia, joten tämä on täydellinen argumenttiluettelon, 493 00:35:31,380 --> 00:35:35,150 ja uudelleen, voit jättää paksusuolen koska se ei ole numero. 494 00:35:36,970 --> 00:35:39,950 Toivottavasti olet kaiken tarkkailemalla kaiken tämän. 495 00:35:39,950 --> 00:35:54,100 >> Historia mekanismi voi palata aiemmin rivit historialuettelon. 496 00:35:54,100 --> 00:36:01,370 Voisit tehdä tämän alias määritelmä. 497 00:36:01,370 --> 00:36:02,950 En ole koskaan nähnyt tätä tehnyt. 498 00:36:02,950 --> 00:36:05,840 Se johtaisi siihen, vetämällä ulos aiemmin komentoja muistiluettelosta 499 00:36:05,840 --> 00:36:08,130 Kun suoritat alias, joka voi olla eri komentoja 500 00:36:08,130 --> 00:36:11,240 riippuen siitä, milloin ja missä suorittaa sen. 501 00:36:11,240 --> 00:36:14,020 Ymmärrettävästi kannattaa vetäytyä tällainen viittaus 502 00:36:14,020 --> 00:36:15,900 vain tietää, mitä aikaisemmin komento oli. 503 00:36:15,900 --> 00:36:17,280 En ole koskaan nähnyt tämän tapahtua. 504 00:36:17,280 --> 00:36:19,970 Oletan joku saattaa haluta, mutta tämä on hyvin epätodennäköistä. 505 00:36:19,970 --> 00:36:26,480 On toinenkin asia täällä. 506 00:36:26,480 --> 00:36:33,060 Jos käytät, että historia-tyyppinen viittaus, 507 00:36:33,060 --> 00:36:38,190 sitten vain väitteitä, joihin on olemassa sellainen viittaus on käytetty. 508 00:36:38,190 --> 00:36:42,180 Jos sinulla on alias määritelmä, joka ei käytä historia-tyyppinen viittaus, 509 00:36:42,180 --> 00:36:44,060 jos se tulee vain alussa komennon 510 00:36:44,060 --> 00:36:46,520 ja sinulla on lisäperusteluja, niin mitä kirjoitat jälkeen 511 00:36:46,520 --> 00:36:48,450 lisätään komennon. 512 00:36:48,450 --> 00:36:52,040 Tällöin esimerkiksi Annoin juuri siellä, käytimme ensimmäinen argumentti; 513 00:36:52,040 --> 00:36:54,610 emme käytä mitään muita. 514 00:36:54,610 --> 00:36:57,960 Jos muut väitteet oli annettu komentorivillä, niitä ei käytettäisi. 515 00:36:57,960 --> 00:37:04,630 Joten jos käytät historian viittaus ollenkaan, sinun täytyy käyttää sitä saada mitään väitettä. 516 00:37:04,630 --> 00:37:11,310 >> On toinen asia täällä Haluan vain mainita, osittain parenthetically, 517 00:37:11,310 --> 00:37:15,250 nimittäin, että tämä historia mekanismi huutomerkki 518 00:37:15,250 --> 00:37:18,010 menee takaisin alkuperäiseen C-kuori. 519 00:37:18,010 --> 00:37:27,060 Tcsh käyttöön historia toiminta 520 00:37:27,060 --> 00:37:30,910 jotka käyttävät monenlaisia ​​komentoja ja jousille päässä toimitukselle 521 00:37:30,910 --> 00:37:33,650 joko Emacs tai vi. 522 00:37:33,650 --> 00:37:36,430 Oma henkilökohtainen mielipiteeni on, Emacs on paljon helpompi käyttää tähän tarkoitukseen 523 00:37:36,430 --> 00:37:39,390 vaikka käytät vi oman säännöllisen muokkausta. 524 00:37:39,390 --> 00:37:43,900 On olemassa erilaisia ​​Emacs komennot ovat nyt sovitettu historiaa. 525 00:37:43,900 --> 00:37:46,410 Ohjaus P saa edelliselle riville historialuettelon. 526 00:37:46,410 --> 00:37:48,840 Toinen tarkistus P sinut yksi ennen sitä. 527 00:37:48,840 --> 00:37:50,540 Nuoli ylös ei sama asia. 528 00:37:50,540 --> 00:37:54,190 Ohjaus N saa seuraavan komennon, jos olet jo pyörähtää takaisin jollain tapaa. 529 00:37:54,190 --> 00:37:55,880 Nuoli alaspäin tekee sekin. 530 00:37:55,880 --> 00:38:00,480 Voit liikkua vasemmalta oikealle nuolilla ja monia muita asioita. 531 00:38:00,480 --> 00:38:02,390 Tämä voi hyödyntää historian mekanismin 532 00:38:02,390 --> 00:38:05,070 paljon helpompaa kuin käyttämällä huutomerkki syntaksin, 533 00:38:05,070 --> 00:38:07,930 mutta et käytä, että alias määritelmä. 534 00:38:17,780 --> 00:38:20,020 Me menemme joskus toiste. 535 00:38:24,300 --> 00:38:25,810 >> Muuttujat. 536 00:38:26,880 --> 00:38:29,510 Tiedätkö mitä muuttujat ovat ohjelmointikieliä. 537 00:38:29,510 --> 00:38:31,680 Kuoret ovat myös ne. 538 00:38:31,680 --> 00:38:37,350 C-shell käyttää komentoa asettaa määrittää muuttujia, 539 00:38:37,350 --> 00:38:41,360 siten, että asettaa muuttujan arvoa b - 540 00:38:41,360 --> 00:38:46,390 kuten sanoin, turha määritelmää, mutta esimerkki siitä, miten sitä käytetään. 541 00:38:48,790 --> 00:38:52,410 Set komento luo muuttuvan, jos se ei vielä ole. 542 00:38:55,270 --> 00:39:02,490 Paikkasidonnainen parametrit komentoriviskriptejä voidaan pitää muuttujia, 543 00:39:02,490 --> 00:39:10,750 mutta käyttää niitä ja säännöt niistä ovat hieman erilaiset. 544 00:39:10,750 --> 00:39:14,320 Et voi antaa arvoa $ 1 aikana käsikirjoituksen. 545 00:39:14,320 --> 00:39:18,340 Sinun olisi pitänyt määritellä uusi muuttuja saatavilla, jos jotkut teistä halusivat. 546 00:39:23,000 --> 00:39:28,470 Kirjoita SET ilman argumentteja ja saat listan kaikista tällä hetkellä määritelty muuttujia. 547 00:39:28,470 --> 00:39:34,220 Ja käykäämme yli minun muita kuori täällä ja nähdä, mitä saamme, jos teemme niin. 548 00:39:34,220 --> 00:39:37,110 Melko pitkä lista siellä, eikö? 549 00:39:37,110 --> 00:39:40,990 Selaamalla ylös hieman. Katsokaa kaikki. 550 00:39:40,990 --> 00:39:44,330 Jotkut näistä asioista on määritelty automaattisesti kuori. 551 00:39:44,330 --> 00:39:49,320 Kuori luo muuttujan ja antaa sille arvoa. 552 00:39:49,320 --> 00:39:52,730 Jotkut heistä ovat määritelty kuori, mutta sitten uudelleen käyttäjä 553 00:39:52,730 --> 00:39:54,820 mukaan hänen mieltymyksensä. 554 00:39:54,820 --> 00:39:59,110 Ja jotkut heistä ovat käyttäjän luomia riippuen siitä, mitä hän tekee, että päivä. 555 00:39:59,110 --> 00:40:01,880 Se on vain asetettu ilman argumentteja. 556 00:40:06,920 --> 00:40:10,050 On outoa piirre tässä tämä asia. 557 00:40:10,050 --> 00:40:17,980 Siihen täytyy olla joko välejä yhtäläisyysmerkki ja muuttujan nimi 558 00:40:17,980 --> 00:40:23,700 ja arvo tai tilat molemmin puolin yhtäläisyysmerkin, 559 00:40:23,700 --> 00:40:28,940 kuten tämä. 560 00:40:35,620 --> 00:40:41,340 Tämä ei toimi, ja tämä todella on oikean komennon 561 00:40:41,340 --> 00:40:43,390 mutta se ei tee mitä aiotte. 562 00:40:43,390 --> 00:40:50,070 Että komento toimii, koska jos vain sanoa asettaa ja muuttujan nimi 563 00:40:50,070 --> 00:40:54,890 ilman yhtäsuuruusmerkkiä tai asettaa ja muuttujan nimen yhtäläisyysmerkin ja mitään arvoa, 564 00:40:54,890 --> 00:40:57,770 se asettaa muuttujan nolla. 565 00:40:57,770 --> 00:41:00,120 Joten asettaa = on oikean komennon. 566 00:41:00,120 --> 00:41:04,370 Set-komennon voi määrittää yli 1 muuttuvan samalla linjalla. 567 00:41:04,370 --> 00:41:11,240 Joten tämä komento täällä on vaikutusta määrittelemällä sekä a ja b null arvoja. 568 00:41:11,240 --> 00:41:13,470 Todennäköisesti ei, mitä haluat. 569 00:41:13,470 --> 00:41:17,940 Tämä yksi täällä, aiemmin mainittiin, johtaa virhe 570 00:41:17,940 --> 00:41:21,270 koska = b ei ole kelvollinen lauseke. 571 00:41:21,270 --> 00:41:23,680 Muuttujan nimi ei voi alkaa yhtäläisyysmerkki. 572 00:41:26,760 --> 00:41:29,080 Ja on näitä muita asioita täällä. 573 00:41:29,080 --> 00:41:36,820 Kaksoispistettä käytettiin valita perusteluja Sivuhistoriarivien, 574 00:41:36,820 --> 00:41:41,210 ja niitä voidaan käyttää - ja en mene ennen - muuttaa niitä asioita. 575 00:41:41,210 --> 00:41:44,480 Niitä voidaan käyttää myös muuttaa kuori muuttujia. 576 00:41:44,480 --> 00:41:49,050 Tämä yksi täällä, $, on arvo. 577 00:41:49,050 --> 00:41:55,040 : R vie pois laajennus. 578 00:41:55,040 --> 00:41:57,200 Laajennus tulee kaikkea muuta seuraavat piste, 579 00:41:57,200 --> 00:41:59,200 dot ja mitään seuraavista se lopussa tiedoston, 580 00:41:59,200 --> 00:42:03,230 vasta listan loppuun, kun viimeinen slash. 581 00:42:03,230 --> 00:42:05,480 Joten minulla on se täällä. 582 00:42:05,480 --> 00:42:10,730 on, että. Se pudottaa. O. 583 00:42:10,730 --> 00:42:16,510 Jos ei ole laajennus, vain polkunimiä kun viimeinen slash, sillä ei ole vaikutusta. 584 00:42:16,510 --> 00:42:27,480 : h, että muuttujalauseke, vie pois viimeinen osa-listalla 585 00:42:27,480 --> 00:42:29,660 uudelleen, vasta viime slash. 586 00:42:29,660 --> 00:42:33,160 So / a / b / c tulee / a / b, 587 00:42:33,160 --> 00:42:38,870 mutta tämä on muuttunut, koska elementin jälkeen lista on tyhjä. 588 00:42:38,870 --> 00:42:43,070 Tässä on jotain joka myös haluan korostaa. 589 00:42:43,070 --> 00:42:46,770 Nämä karsinnat eivät etsi olemassaolon näitä tiedostoja. 590 00:42:46,770 --> 00:42:48,910 Ne vain näyttävät jousille. 591 00:42:48,910 --> 00:42:54,520 Tätä on tarkoitus käsitellä tiedostojen nimet, polkunimissä, 592 00:42:54,520 --> 00:42:57,520 mutta niitä voidaan käyttää missä tahansa merkkijono, vaikka se ei ole tiedoston nimi. 593 00:42:57,520 --> 00:42:58,920 Ja he eivät etsi olemassaolon, 594 00:42:58,920 --> 00:43:03,550 joten jos ei ole sellaista tiedostoa, / / ​​b / c, tämä toimii edelleen. 595 00:43:03,550 --> 00:43:06,930 Olipa mitään hyötyä, on toinen kysymys, mutta se toimii silti. 596 00:43:06,930 --> 00:43:12,850 Muuttujat ovat erilaisia ​​Bourne kuoret. Pääsemme siihen myöhemmin. 597 00:43:12,850 --> 00:43:18,240 Dollari merkki voidaan karannut aivan kuten huutomerkki ja tähdellä. 598 00:43:18,240 --> 00:43:21,760 Dollari merkki voidaan kenoviiva tai puolilainausmerkkejä. 599 00:43:21,760 --> 00:43:24,790 Lainausmerkit on outoa vaikutus kaikissa kuoret 600 00:43:24,790 --> 00:43:28,690 pakottaa arvioinnin dollarin merkki muuttujalauseke. 601 00:43:28,690 --> 00:43:31,960 Joten jos se on karannut yksi tapa, lainausmerkit voi olla vaikutusta 602 00:43:31,960 --> 00:43:34,380 aiheuttaa sen, voidaan arvioida tapauksessa. 603 00:43:34,380 --> 00:43:37,090 Tämä on hieman sekava. 604 00:43:37,090 --> 00:43:43,740 Jos on useita tasoja pakenevat, kuten puolilainausmerkkejä sisällä lainausmerkkeihin 605 00:43:43,740 --> 00:43:46,770 tai lainausmerkkeihin sisällä lainausmerkkejä, sinun kannattaa testata, mitä tapahtuu 606 00:43:46,770 --> 00:43:49,520 muuttujaan jos käytät jotakin. 607 00:43:49,520 --> 00:43:53,410 Ne, 2 tilanteissa - kaksinkertainen sisällä yhden, yksi sisällä kaksinkertaisen - 608 00:43:53,410 --> 00:43:55,980 eivät välttämättä anna sinulle saman tuloksen. 609 00:44:02,520 --> 00:44:05,600 Ympäristömuuttujat, sidottu C-shell muuttujia. 610 00:44:05,600 --> 00:44:08,340 Ympäristömuuttujat ovat myös muuttujia C-kuori, 611 00:44:08,340 --> 00:44:11,250 ja ne ovat myös muuttujat muita kuoria liikaa. 612 00:44:11,250 --> 00:44:15,230 C-kuori, ne ovat eri sarjaa. 613 00:44:15,230 --> 00:44:18,130 Asioita sanoin ennen noin Kuoren muuttujia. 614 00:44:18,130 --> 00:44:21,300 Ympäristömuuttujat ovat selkeitä muuttujia 615 00:44:21,300 --> 00:44:28,650 lukuun ottamatta useita muuttujia, jota kutsumme sidottu muuttujia, 616 00:44:28,650 --> 00:44:30,640 jotka ovat erittäin tärkeitä ja me päästä niistä myöhemmin. 617 00:44:30,640 --> 00:44:34,950 Ympäristömuuttujat automaattisesti eteenpäin 618 00:44:34,950 --> 00:44:41,800 to kuoret tai komentoja, jotka ajetaan teidän kuori. 619 00:44:41,800 --> 00:44:46,220 Muut asiat eivät ole. Kuoren muuttujia, alias eivät ole. Ympäristömuuttujat ovat. 620 00:44:46,220 --> 00:44:48,630 Siksi kutsumme heitä ympäristömuuttujat, 621 00:44:48,630 --> 00:44:55,030 Ajatuksena on, että ympäristö ulottuu ohi vain nykyisen kuori. 622 00:44:55,030 --> 00:45:00,510 Niitä voidaan käyttää määrittelemään asioita komentoja. 623 00:45:00,510 --> 00:45:05,470 Tässä on esimerkki. PRINTER, LPDEST. 624 00:45:05,470 --> 00:45:12,270 Molemmat näistä muuttujista voi määritellä tulostin, joka komento käyttää tulostaa asioita. 625 00:45:12,270 --> 00:45:16,500 Jos sinulla on useita tulostimia ympärillä, sinun kannattaa laittaa pidät. 626 00:45:16,500 --> 00:45:21,320 Siksi meidän on 2 muuttujia on, että eri sarjaa komennot kirjoitettu 627 00:45:21,320 --> 00:45:23,870 Käyttämällä näitä erilaisia ​​muuttujia. 628 00:45:23,870 --> 00:45:25,910 Saatat antaa heille erilaisia ​​arvoja. 629 00:45:25,910 --> 00:45:28,860 Todennäköisesti annat heille molemmille sama arvo. 630 00:45:28,860 --> 00:45:35,840 Nuo asiat toimivat, koska komennot, jotka tekevät tulostus 631 00:45:35,840 --> 00:45:40,740 oli ohjelmoitu tutkimaan arvoja näistä muuttujista. 632 00:45:42,200 --> 00:45:46,150 Jos ohjelma ei ole kirjoitettu niin, jos se olisi kirjoitettu tehdä jotain muuta, 633 00:45:46,150 --> 00:45:48,280 muuttuja ei olisi merkitystä. 634 00:45:48,280 --> 00:45:52,530 Joten käyttöjärjestelmä ei ole etsivät näitä muuttujia 635 00:45:52,530 --> 00:45:55,210 aina viitata tulostin. 636 00:45:55,210 --> 00:45:59,090 Komento, joka tekee tulostus etsii näistä muuttujista, jos se on ohjelmoitu niin. 637 00:46:11,030 --> 00:46:15,240 Nämä muuttujat määritellään usein oman alustustiedostoja 638 00:46:15,240 --> 00:46:19,440 mutta ei välttämättä. 639 00:46:19,440 --> 00:46:21,050 Voit määritellä ne komentorivillä. 640 00:46:21,050 --> 00:46:24,090 Ne voidaan määritellä komennon. 641 00:46:24,090 --> 00:46:28,740 Komento, joka kulkee jotain voisi olla oma valinta muuttujia - 642 00:46:28,740 --> 00:46:32,390 muuttujat, jotka ovat ainutlaatuisia tietylle ohjelmistopaketti, esimerkiksi. 643 00:46:32,390 --> 00:46:36,740 Ne määritellään, kun suoritat paketin. 644 00:46:39,690 --> 00:46:42,680 Miten nämä muuttujat välitetään sub-shell? 645 00:46:42,680 --> 00:46:48,210 Kun sub-kuori on kirjoitettu, se ei kirjoita kyseiselle alueelle. 646 00:46:48,210 --> 00:46:53,260 Alueen osa-kuori, joka on omistettu ympäristömuuttujat 647 00:46:53,260 --> 00:46:56,450 ei kirjoittanut sub-kuori, se on kirjoitettu kopioimalla. 648 00:46:56,450 --> 00:47:00,530 Kun suoritat tavallista komennon, kuten nämä komennot tulostaa tai mitä tahansa, 649 00:47:00,530 --> 00:47:03,840 he aloittavat luomalla uusi kuori. 650 00:47:03,840 --> 00:47:06,190 Kuori luo kuori ja sitten korvaa osan siitä 651 00:47:06,190 --> 00:47:08,800 komennolla, että käytät, mikä on hieman sekava, 652 00:47:08,800 --> 00:47:10,740 mutta se miten nämä komennot saat ympäristömuuttujat 653 00:47:10,740 --> 00:47:14,890 että he sitten viitataan myöhemmin. 654 00:47:21,920 --> 00:47:28,010 Komento tässä määrittelyssä muuttujan setenv. 655 00:47:28,010 --> 00:47:36,470 Se miten määritellä se. Se on 3 elementtiä: setenv, muuttuja, arvo. 656 00:47:36,470 --> 00:47:44,710 Jos vain setenv ilman argumentteja, mitä saat? 657 00:47:47,220 --> 00:47:48,810 Luettelo kaikista käytetyistä muuttujista. 658 00:47:48,810 --> 00:47:53,190 Taaskin se on mukavan pitkä lista ja tässä tapauksessa, kuten muut, 659 00:47:53,190 --> 00:47:57,320 nämä muuttujat määritellään pitkälti kirjautuminen toimintaa, itse säiliön 660 00:47:57,320 --> 00:47:59,740 eikä mitään tein. 661 00:47:59,740 --> 00:48:03,580 On toinenkin komennon täällä, printenv. 662 00:48:07,520 --> 00:48:10,340 Että tulostaa myös ympäristöä. 663 00:48:10,340 --> 00:48:15,240 Huomata tämän viimeinen asia täällä, toimittaja = vi. 664 00:48:15,240 --> 00:48:21,120 Joka sanoo, että jos käytän jotain, joka vaatii editori 665 00:48:21,120 --> 00:48:25,530 enkä määritä toimittaja ja se antaa minulle valinta, se voi antaa minulle vi. 666 00:48:25,530 --> 00:48:37,280 Mitä jos en tee printenv editor? Se kertoo minulle, mitä se on. 667 00:48:37,280 --> 00:48:41,340 Juuri ennen että oli vaihteleva, vähemmän. 668 00:48:41,340 --> 00:48:46,040 Nämä ovat oletusarvot vaihtoehtoja, kun olen suorittanut vähemmän komento, 669 00:48:46,040 --> 00:48:49,360 joka näyttää tiedostot. 670 00:48:49,360 --> 00:48:55,910 Joten jos teen sen, printenv voi kestää 1 argumentti tai 0 argumentteja, 671 00:48:55,910 --> 00:48:58,070 enintään 1. 672 00:49:01,800 --> 00:49:05,690 On muitakin komentoja myös, mutta emme aio päästä kaikki, että tänään. 673 00:49:05,690 --> 00:49:11,010 Muista oli määritteet Kuoren muuttujia, kuten: h, 674 00:49:11,010 --> 00:49:14,350 joka laskee, viimeinen osa polun, 675 00:49:14,350 --> 00:49:17,950 tai r, joka laskee, laajennus. 676 00:49:17,950 --> 00:49:23,110 Ne, jotka nyt koskevat ympäristömuuttujat liikaa. He eivät tottunut. 677 00:49:23,110 --> 00:49:24,960 Sitä käytetään olla niitä ei voida muuttaa. Nyt ne voivat olla. 678 00:49:24,960 --> 00:49:29,190 Se on yksi edistysaskeleita kehitystä kuoret vuosien varrella. 679 00:49:29,190 --> 00:49:35,620 Olin sanomassa, että kuoret osana ympäristöissä 680 00:49:35,620 --> 00:49:43,040 ja kuori muuttujia C-Shell ovat joitakin poikkeuksia lukuun ottamatta, erillinen joukko. 681 00:49:43,040 --> 00:49:46,790 Voit luoda ympäristömuuttujan ja komentotulkkimuuttujaan samanniminen. 682 00:49:46,790 --> 00:49:49,220 Ne ovat eri muuttujista, ne voivat olla eri hintaisia. 683 00:49:49,220 --> 00:49:53,090 Muuttaminen arvo yksi ei muuta arvoa muille. 684 00:49:53,090 --> 00:49:58,070 Nämä muuttujat ovat kaikki arvioitiin dollarin merkki - $, $ riippumatta. 685 00:49:58,070 --> 00:50:02,340 Joten mitä jos sinulla on tämä? Tiedätkö kumpi saat? 686 00:50:02,340 --> 00:50:04,520 Minun testeissä sain komentotulkkimuuttujaan, 687 00:50:04,520 --> 00:50:07,240 mutta tällaista ei ole dokumentoitu ja et voi vedota tähän. 688 00:50:07,240 --> 00:50:10,270 Joten pyydän teitä, luo kuori ja ympäristömuuttujat 689 00:50:10,270 --> 00:50:13,490 samannimisiä hyvä idea? No okei. 690 00:50:13,490 --> 00:50:17,460 Mitkä ovat ne tärkeimmät poikkeukset, joissa ympäristö ja Kuoren muuttujia 691 00:50:17,460 --> 00:50:19,860 ovat yhteydessä toisiinsa? 692 00:50:19,860 --> 00:50:27,470 On nämä 4. 693 00:50:32,030 --> 00:50:35,510 Kirjain TERM-muuttujan avulla 694 00:50:35,510 --> 00:50:41,540 komentotulkkimuuttujaan aikavälin pienillä kirjaimilla, tyyppi pääte-emulointi. 695 00:50:41,540 --> 00:50:47,430 Olen juuri menossa mennä tänne ja aion tehdä kaiku, hyödyllinen komento täällä, 696 00:50:47,430 --> 00:50:52,560 $ TERM $ aikavälillä. Ja siellä. 697 00:50:52,560 --> 00:51:00,570 xterm on päätetyypin ikkunat näkyvät X Window System. 698 00:51:00,570 --> 00:51:04,330 xterm-väri on muunnelma, joka, joka mahdollistaa eri värejä. 699 00:51:04,330 --> 00:51:06,580 Miksi me määrittelemme nämä? Mikä on tämä hyvä? 700 00:51:06,580 --> 00:51:09,740 Komentoja, jotka järjestää ruutu kuin editori 701 00:51:09,740 --> 00:51:13,680 Lähetä erityisesti sekvenssit, nimeltään ohjausmerkkijonoja, 702 00:51:13,680 --> 00:51:18,160 liittimeen tai ikkunan järjestää sitä ja niin edelleen. 703 00:51:18,160 --> 00:51:20,990 Nämä sekvenssit ovat erilaisia ​​eri päätelaitteita. 704 00:51:20,990 --> 00:51:23,100 Tämä kertoo sen mitkä käyttää. 705 00:51:23,100 --> 00:51:25,900 Joskus on asioita siellä. 706 00:51:25,900 --> 00:51:28,600 Saatat haluta muuttaa. 707 00:51:28,600 --> 00:51:30,780 Jos asiat eivät toimi, joskus terminaalin tyyppi on asetettu väärin, 708 00:51:30,780 --> 00:51:36,440 saatat pystyä korjaamaan se määritellään uudelleen termi muuttuja. 709 00:51:36,440 --> 00:51:43,420 Näissä tapauksissa muuttamalla yhden muuttujan muuttujan tai komentotulkkimuuttujaan, 710 00:51:43,420 --> 00:51:45,970 pitäisi muuttaa toinen. 711 00:51:45,970 --> 00:51:50,970 Olen havainnut, kokemuksen kautta, että muuttuvat TERM isoilla kirjaimilla 712 00:51:50,970 --> 00:51:54,060 ei aina muutu komentotulkkimuuttujaan aikavälillä pienin kirjaimin. 713 00:51:54,060 --> 00:51:55,550 Tämä on virhe. 714 00:51:55,550 --> 00:51:59,400 En tiedä, onko se aina totta. Suurimman osan ajasta se ei ole totta, mutta se voi olla. 715 00:51:59,400 --> 00:52:02,490 Joten jos teet muutoksen, vain tarkistaa, että ulos. 716 00:52:02,490 --> 00:52:05,830 Se ei ole usein, että sinun täytyy muuttaa tätä arvoa, mutta kerran kun teet. 717 00:52:05,830 --> 00:52:08,260 Ympäristö Muuttuva käyttäjän. 718 00:52:08,260 --> 00:52:12,070 Jälleen ympäristömuuttujien isoilla kirjaimilla, komentotulkkimuuttujaan pienin kirjaimin. 719 00:52:12,070 --> 00:52:13,710 Tämä on käyttäjätunnuksesi. 720 00:52:13,710 --> 00:52:16,730 Se on vain hyvin poikkeuksellisissa olosuhteissa 721 00:52:16,730 --> 00:52:18,420 että haluaisi muuttaa. 722 00:52:18,420 --> 00:52:22,350 Jos käyttäjätunnuksesi on joku muu, se voi heittää kaikenlaisia ​​asioita pois. 723 00:52:22,350 --> 00:52:26,040 Kotihakemiston käyttäjän kotihakemiston. 724 00:52:26,040 --> 00:52:28,060 Jälleen, et halua muuttaa. 725 00:52:28,060 --> 00:52:32,260 Huomaa kaikissa näissä tapauksissa ja joka aiomme kattaa, PATH, 726 00:52:32,260 --> 00:52:37,070 ympäristö muuttuja on isoin kirjaimin ja sidotun komentotulkkimuuttujaan on pienin kirjaimin. 727 00:52:37,070 --> 00:52:39,240 Jos muutat yhden, sinun pitäisi muuttaa muita. 728 00:52:39,240 --> 00:52:45,960 Tällainen sitova ei voida vahvistaa, koska et voi sitoa 2 muuttujia, 729 00:52:45,960 --> 00:52:50,570 Muut kuin nämä 4, ja sitovat näiden muuttujien ei voi kumota, 730 00:52:50,570 --> 00:52:52,090 et voi erottaa niitä. 731 00:52:52,090 --> 00:52:55,820 Joten nämä 4 paria muuttujia ovat sitoutuneet. 732 00:52:55,820 --> 00:52:59,020 Ne tulee aina olemaan. None toiset ovat. 733 00:52:59,020 --> 00:53:05,720 Lisäksi olisi mahdollista luoda muuttujia samannimisiä 734 00:53:05,720 --> 00:53:07,780 vastakkaista tyyppiä. 735 00:53:07,780 --> 00:53:11,600 Voisit tehdä komentotulkkimuuttujaan termi pienin kirjaimin 736 00:53:11,600 --> 00:53:14,990 tai ympäristölle TERM isoilla kirjaimilla. 737 00:53:14,990 --> 00:53:19,040 Nämä muuttujat olisi riippumaton näiden pariksi muuttujien 738 00:53:19,040 --> 00:53:20,780 ja ne olisivat toisistaan ​​riippumattomia. 739 00:53:20,780 --> 00:53:23,780 En voi kuvitella, miksi sinun pitäisi tehdä, että ellet halua hämmentää ihmisiä. 740 00:53:24,600 --> 00:53:29,730 Tämä yksi täällä, polku muuttuja, tämä on todella tärkeä. 741 00:53:29,730 --> 00:53:35,550 Toinen asia on se, että voi olla tilanteita 742 00:53:35,550 --> 00:53:40,430 muuttujia, joilla on samankaltaisia ​​pariksi nimiä, jotka eivät ole sidoksissa toisiinsa. 743 00:53:40,430 --> 00:53:45,000 Ei voi olla muuttujia, Shellin ja kuori, vuonna isot ja pienet kirjaimet. 744 00:53:45,000 --> 00:53:48,300 Perustuu että nimeä, et tiedä, jos tämä muuttuja on komentotulkkimuuttujaan 745 00:53:48,300 --> 00:53:51,580 tai ympäristön muuttuja, ja he eivät sitoutuneet toisiinsa. 746 00:53:51,580 --> 00:53:55,300 Niin tuollainen pariksi nimiä ei tarkoita sidottuja muuttujia. 747 00:53:55,300 --> 00:53:58,830 PATH, jonka minä näytti ennen, 748 00:53:58,830 --> 00:54:01,880 on luettelo polkunimissä jossa kuori etsii komentoja. 749 00:54:01,880 --> 00:54:12,320 Mennään yli tähän ikkunaan täällä ja teemme echo $ PATH, isoilla kirjaimilla - 750 00:54:12,320 --> 00:54:20,230 ympäristömuuttujien - echo $ PATH, pienet kirjaimet - komentotulkkimuuttujaan. 751 00:54:20,230 --> 00:54:24,980 Huomaa, että lista hakemistoista on sama. Nämä ovat sitoutuneet. 752 00:54:24,980 --> 00:54:26,590 Vaihda yksi, muutat muita. 753 00:54:26,590 --> 00:54:32,970 Vuonna muuttujan elementit on erotettu kaksoispisteellä. Huomaa, että. 754 00:54:32,970 --> 00:54:35,130 Kuoren muuttujia ovat toisistaan ​​välilyönnillä. 755 00:54:35,130 --> 00:54:38,760 Tämä ympäristö muuttuja on yksi merkkijono. 756 00:54:38,760 --> 00:54:41,480 Komentotulkkimuuttujaan on jono. 757 00:54:41,480 --> 00:54:43,490 Bourne shell ei ollut taulukot. 758 00:54:43,490 --> 00:54:46,600 Bash tekee, mutta tämä on jo kiinteä osa kuori. 759 00:54:46,600 --> 00:54:48,660 Tämä on yhden merkkijonon eikä jono. 760 00:54:48,660 --> 00:54:50,420 C-shell aina ollut taulukot. 761 00:54:50,420 --> 00:54:52,630 Paneelit ovat paljon helpompi työskennellä. 762 00:54:52,630 --> 00:54:54,400 Voit viitata osia siitä. 763 00:54:54,400 --> 00:55:02,350 Joten echo $ PATH [1] ja saan / usr / bin, ensimmäinen elementti. 764 00:55:02,350 --> 00:55:09,950 Jälleen muistaa dollarin merkki tarkoittaa viimeinen osa historiaa luettelosta. 765 00:55:09,950 --> 00:55:16,850 Mitä siellä tapahtuu? Se yritti löytää dollarin merkki muuttujana symboli. 766 00:55:16,850 --> 00:55:20,850 Olen paeta sitä. Oho. Se ei ota sitäkään. 767 00:55:20,850 --> 00:55:23,690 Jotkut näistä asioista eivät toimi niin hyvin. 768 00:55:23,690 --> 00:55:28,140 Ehkä me vain jättää se pois. 769 00:55:28,140 --> 00:55:36,980 Asterisk viittaa koko juttu, mutta se mitä saat, jos et määritä elementti. 770 00:55:36,980 --> 00:55:46,170 Toinen tapa, että taulukon muuttujiin voidaan manipuloida, 771 00:55:46,170 --> 00:55:49,500 alkioiden lukumäärä siellä, 7 elementtiä. 772 00:55:49,500 --> 00:55:53,410 Täällä laitamme ruutumerkillä ennen muuttujan nimi. 773 00:55:53,410 --> 00:55:58,280 Tässä on toinen. Laittaa kysymysmerkki siellä. 774 00:55:58,280 --> 00:56:03,170 Tämä on looginen arvo. , Joka ilmaisee, että muuttuja on olemassa. 775 00:56:03,170 --> 00:56:05,160 Se on toinen tapa työskennellä muuttujia. 776 00:56:05,160 --> 00:56:06,660 Että muuten, ei tarvitse olla taulukkomuuttujaa. 777 00:56:06,660 --> 00:56:08,210 Se voisi olla mikä tahansa muuttuja. 778 00:56:08,210 --> 00:56:11,840 Ja jos en tee, ettei ole sellaista muuttujaa ja saan 0. 779 00:56:11,840 --> 00:56:14,990 Toinen pikku juttu siellä noin muuttuja arviointeja. 780 00:56:23,670 --> 00:56:32,950 Takaisin tämä yksi täällä, jos jostain syystä et halunnut työskennellä tämän 781 00:56:32,950 --> 00:56:37,990 pikemminkin kuin työskentelystä array, komentotulkkimuuttujaan, 782 00:56:37,990 --> 00:56:41,470 on komentoja, jotka voi erottaa nämä asiat perustuvat paksusuolen. 783 00:56:41,470 --> 00:56:44,080 Itse asiassa, jos aiot olla tekemässä tätä Bash shell mahdollisesti 784 00:56:44,080 --> 00:56:47,110 jonkinlainen käsikirjoitus, joka olisi luultavasti miten tekisit sen. 785 00:56:47,110 --> 00:56:50,350 Mutta C-shell se on paljon helpompi käyttää array. 786 00:56:50,350 --> 00:56:58,250 Vuonna Bourne shell, muuttujat ovat antama yksi ilme näin, 787 00:56:58,250 --> 00:57:01,760 kuten miten voit määritellä muuttuja ohjelmointikieli, 788 00:57:01,760 --> 00:57:05,110 Ja tässä ei saa olla välilyöntejä. 789 00:57:05,110 --> 00:57:09,110 Se on tarpeen, että se on vain 1 merkkijono. 790 00:57:09,110 --> 00:57:14,980 Vuonna Bourne-tyyppinen kuoret, kaikki muuttujat Kuoren muuttujia. 791 00:57:14,980 --> 00:57:19,250 Ympäristömuuttujat ovat osajoukko Kuoren muuttujia. 792 00:57:19,250 --> 00:57:24,060 Ne erottaa ei-ympäristömuuttujat viemällä. 793 00:57:24,060 --> 00:57:28,860 Käskyä, joka on vienti, kuten vienti PRINTER. 794 00:57:28,860 --> 00:57:34,930 Jos olisimme määritellä tällaisia ​​muuttuja, 795 00:57:34,930 --> 00:57:38,480 jos halusimme tulostuskomentoa löytää, se olisi oltava ympäristön muuttuja, 796 00:57:38,480 --> 00:57:40,730 ja niin me teemme sen yhdessä. 797 00:57:40,730 --> 00:57:42,090 Tässä on jotain sellaista hämmentävää. 798 00:57:42,090 --> 00:57:50,430 Tämä ilmaus, vienti ympäristöön, juontuu tästä Bourne shell konsepti, 799 00:57:50,430 --> 00:57:54,520 ja vielä tätä ilmaisua käytetään kuvaukset C-kuori, 800 00:57:54,520 --> 00:57:57,920 jos ei ole sellaista komentoa kuin vienti. 801 00:57:57,920 --> 00:58:06,200 Jos vain sanoa viedä itse, saat listan viedään - 802 00:58:06,200 --> 00:58:10,620 Joten jos en vain viedä täällä, mitään sellaista. 803 00:58:13,620 --> 00:58:15,200 Okei, sinne siis. 804 00:58:15,200 --> 00:58:17,010 Nämä asiat, muuten, myös määritelty kuori. 805 00:58:17,010 --> 00:58:19,400 En määritellä mitään näistä itse. 806 00:58:19,400 --> 00:58:23,550 Shell tekee kaikenlaisia ​​asioita itsestään. 807 00:58:23,550 --> 00:58:26,650 Se pitäisi tehdä asioita automaattisesti. 808 00:58:30,240 --> 00:58:36,880 Vuonna Bash tai Korn shell, voit suorittaa komennon näin, 809 00:58:36,880 --> 00:58:42,000 Tästä koituu sekä antaa muuttujan arvo ja viedä sen 1 komento. 810 00:58:42,000 --> 00:58:46,150 Vuonna Bourne shell niiden on oltava erilliset komennot kuten vientiin. 811 00:58:46,150 --> 00:58:48,410 Tässä on toinen näkökohta, joka on sekava. 812 00:58:48,410 --> 00:58:52,220 Asetettu komento C-shell määrittelee muuttujat 813 00:58:52,220 --> 00:58:55,550 ja ilman argumentteja kertoo, mitä muuttujien arvot ovat. 814 00:58:55,550 --> 00:59:01,140 Vuonna Bash kuori, set-komento ilman argumentteja ei sama asia, 815 00:59:01,140 --> 00:59:03,580 mutta väitteet, jotka se tekee jotain aivan muuta. 816 00:59:03,580 --> 00:59:06,200 Joten nämä ovat eri argumentteja. 817 00:59:06,200 --> 00:59:10,460 Jotkut näistä ovat ympäristön muuttujia, jotkut heistä ovat Kuoren muuttujia. 818 00:59:10,460 --> 00:59:13,200 Kaikki ne ovat Kuoren muuttujia todella. Jotkut näistä ovat ympäristömuuttujat. 819 00:59:15,690 --> 00:59:23,920 Set-komennon argumentteja voidaan käyttää 820 00:59:23,920 --> 00:59:28,220 on paikkasidonnainen parametrien kirjoitus, 821 00:59:28,220 --> 00:59:33,910 joka on tapa saada ne kaikki kerralla. 822 00:59:33,910 --> 00:59:36,150 Emme voi todellakaan mennä, että tänään. 823 00:59:36,150 --> 00:59:39,580 Sitä voidaan myös käyttää muuttamaan kuori käyttäytymistä. 824 00:59:39,580 --> 00:59:46,700 Erityisesti Bash on muuttujia, jotka määrittävät, miten kuori käyttäytyy. 825 00:59:46,700 --> 00:59:51,310 Sitten myös vain tämä yksi komento, saatat nähdä, tämä komento. 826 00:59:51,310 --> 00:59:59,050 Latoa seuraa muuttujien ja muuttujatyypeille käytetään Korn ja Bash kuoret. 827 00:59:59,050 --> 01:00:04,970 Se ei ole pakollista, mutta sitä voidaan käyttää rajoittamaan muuttujien arvot, 828 01:00:04,970 --> 01:00:08,400 mikä voi olla hyödyllistä virheiden estämiseksi, ja se on melko yleistä. 829 01:00:08,400 --> 01:00:11,640 Joten olen vain mainita, että jos näet sen jonnekin. 830 01:00:17,290 --> 01:00:19,160 Missä komento. 831 01:00:19,160 --> 01:00:22,490 Muista Mainitsin aiemmin, jos komento C-kuori, 832 01:00:22,490 --> 01:00:28,750 joka voi kertoa sijainnin komennon polun. 833 01:00:28,750 --> 01:00:32,580 Tässä on kirjoitusta. 834 01:00:32,580 --> 01:00:41,900 Sinun pitäisi löytää näppäimistön jonnekin hahmo, joka näyttää tältä. 835 01:00:41,900 --> 01:00:44,910 Sijainti näppäimistö on menossa vaihtelevat. 836 01:00:44,910 --> 01:00:47,050 Annoimme sille nimeksi backquote. Se on noin kokoa lainaus. 837 01:00:47,050 --> 01:00:48,720 Se menee ylhäältä vasemmalta oikeaan alakulmaan. 838 01:00:48,720 --> 01:00:52,690 Täällä minun Mac-näppäimistöllä se on ylhäällä vasemmalla yläkulmassa. 839 01:00:52,690 --> 01:00:58,150 Että merkki voidaan suorittaa komennon sisällä komennon. 840 01:00:58,150 --> 01:01:03,400 Jos sinulla on lauseke sisällä lainausmerkkeihin, 841 01:01:03,400 --> 01:01:07,080 että ilme on komento, se ajaa. 842 01:01:07,080 --> 01:01:09,010 Tuotos, että komento 843 01:01:09,010 --> 01:01:11,980 korvataan tämän jälkeen koko backquote ilmaisun 844 01:01:11,980 --> 01:01:16,110 sisällä enää komento joka sitten juoksee tuon tuotoksen 845 01:01:16,110 --> 01:01:22,010 osana merkkijono väitteitä ja niin edelleen. 846 01:01:22,010 --> 01:01:28,640 Tässä on komento, joka käyttää tätä. 847 01:01:28,640 --> 01:01:32,340 Katsotaanpa osoittamaan toiminnan täällä. 848 01:01:44,980 --> 01:01:49,090 Mennään tänne, ottaa lainausmerkkeihin. 849 01:01:49,090 --> 01:01:54,410 Ohjaus saa minut rivin alkuun kanssa Emacs editointi syntaksin. 850 01:01:54,410 --> 01:02:00,380 Toistaiseksi polkunimissä on mitä jos tekee, 851 01:02:00,380 --> 01:02:05,040 mutta kun teen sen näin, se sitten tulpat, että luettelo polkunimissä 852 01:02:05,040 --> 01:02:08,750 Tämän sijasta koko backquote ilmaisun ja kulkee ls-l niitä. 853 01:02:08,750 --> 01:02:11,120 Kind of kätevä, vai? 854 01:02:11,120 --> 01:02:14,860 Niin, että yksi siisti juttu. Niin lainausmerkkeihin toimi. 855 01:02:14,860 --> 01:02:17,560 Nyt mennään alaspäin vielä hieman. 856 01:02:17,560 --> 01:02:22,050 Nämä ovat aliaksia. Olen itse käyttää näitä. 857 01:02:22,050 --> 01:02:26,410 Yritän saada tätä 1 muokkaustoiminnosta. 858 01:02:34,900 --> 01:02:36,900 Okei. 859 01:02:36,900 --> 01:02:39,630 Katsotaanpa nyt, miten nämä määritelmät tuli ulos. 860 01:02:39,630 --> 01:02:44,930 alias LWH kertoi minulle, kuinka se on määritelty. 861 01:02:44,930 --> 01:02:51,210 Huomaa sitä juuri tämä, mutta ulompi lainauksia on otettu pois käytöstä 862 01:02:51,210 --> 01:02:53,750 ja huutomerkki otetaan pois. 863 01:02:53,750 --> 01:02:58,940 ! *, Täydellinen luettelo kaikista väitteistä. 864 01:02:58,940 --> 01:03:03,580 Vuonna alias määritelmä sitä sovelletaan takaisin, jos käytän tätä. 865 01:03:03,580 --> 01:03:10,620 LWH ksh bash. Okei. 866 01:03:10,620 --> 01:03:13,960 Nähdä miten se toimii? Se säästää minulle kirjoittamalla. 867 01:03:13,960 --> 01:03:16,440 Mennään jopa hieman vain mainita jotain muuta täällä. 868 01:03:19,150 --> 01:03:23,120 Huomaa täällä nämä eri kuoret. Minun piti mainita tämän ennenkin. 869 01:03:23,120 --> 01:03:36,060 Csh on 2 tänne ja niin tekee / bin / tcsh. 870 01:03:36,060 --> 01:03:39,870 Voisimme luoda muilla keinoin, että nämä ovat oikeastaan ​​sama tiedosto. 871 01:03:39,870 --> 01:03:43,150 Muista Olin sanomassa, jos kirjoitat sh saat bash. 872 01:03:43,150 --> 01:03:47,390 Kirjoita tämä ja saat tämän. 873 01:03:47,390 --> 01:03:51,730 Mutta ne eivät liity toisiinsa. Nämä ovat yksi niistä siellä. 874 01:03:51,730 --> 01:03:54,910 Ja tämä ei ole sellainen tiedosto, joka voidaan soittaa toinen. 875 01:03:54,910 --> 01:03:59,460 Joten ne ovat erillisinä tiedostoina, C-kuori niistä ovat samaa tiedostoa. 876 01:03:59,460 --> 01:04:03,640 Takaisin tänne, toinen täällä, tämä alias, 877 01:04:03,640 --> 01:04:09,090 Huomaa, että on käynnissä tämän komennon, tiedoston. 878 01:04:09,090 --> 01:04:13,810 Että alias toimii niin. Tiedosto kertoo tyypin tiedoston. 879 01:04:13,810 --> 01:04:20,330 Joten FWH ksh bash. Okei. 880 01:04:20,330 --> 01:04:23,230 Se on lähtö tiedoston komennon. 881 01:04:23,230 --> 01:04:24,630 En tiedä, jos tiedät mitä tämä tarkoittaa tässä, 882 01:04:24,630 --> 01:04:26,750 Mach-O Universal Binary 2 arkkitehtuurit. 883 01:04:26,750 --> 01:04:30,470 On 2 mahdollista prosessori tyyppejä Mac, 884 01:04:30,470 --> 01:04:34,780 ja jotkin ohjelmat kirjoitettiin pystyä suorittamaan sekä, 885 01:04:34,780 --> 01:04:37,950 ja tiedosto komento voi todeta, niin sitähän tämä tarkoittaa. 886 01:04:37,950 --> 01:04:40,660 Molemmat tiedostot kirjoitettu näin. 887 01:04:40,660 --> 01:04:43,760 Joten näemme, miten alias toimii, näemme, miten backquote toimii, 888 01:04:43,760 --> 01:04:48,640 näemme, miten varsinainen tiedosto ls tai tiedoston toimii. 889 01:04:52,050 --> 01:04:57,000 Tämä ei ehkä toimi. Kokeile "jossa jossa" ja "LWH missä". Okei, kokeile sitä. 890 01:04:57,000 --> 01:05:01,040 jossa jossa. 891 01:05:01,040 --> 01:05:03,500 joissa on kuori sisäänrakennettu. 892 01:05:03,500 --> 01:05:06,970 Muista aikaisemmin osoitimme, että Bash ei ollut silloin. 893 01:05:06,970 --> 01:05:10,080 Jos kirjoitat missä Bash shell, saat virheilmoituksen. 894 01:05:10,080 --> 01:05:12,540 Se on vain osa kuoren sijaan, että erillinen komento. 895 01:05:12,540 --> 01:05:20,000 Mitä tapahtuu, jos kirjoitan LWH etsimässä missä? Katso, mitä siellä tapahtuu. 896 01:05:20,000 --> 01:05:22,850 Ran jossa jossa sai tämän lähdön, ja sitten yritti juosta ls 897 01:05:22,850 --> 01:05:25,600 kuin l missä on kuori sisäänrakennettu. 898 01:05:25,600 --> 01:05:28,790 jos on olemassa, mutta toisilla ei ole. 899 01:05:28,790 --> 01:05:32,090 Mikään näistä olemassa, itse asiassa. 900 01:05:32,090 --> 01:05:35,560 Niin että ei aina toimi, ja se myös osoittaa, kuinka jotkut asiat 901 01:05:35,560 --> 01:05:39,580 älä tee aivan mitä saattaisi kuvitella. 902 01:05:40,930 --> 01:05:43,010 Mennään hieman pidemmälle täällä. 903 01:05:44,890 --> 01:05:54,760 Tämä tässä on Bash. Tämä on myös kirjoitusta kuin backquote. 904 01:05:54,760 --> 01:06:05,280 Mutta toisin backquote, se käyttää tätä muuttujaa tyyliin. 905 01:06:05,280 --> 01:06:09,860 On olemassa lukuisia ilmaisuja, jotka alkavat dollarin merkki, 906 01:06:09,860 --> 01:06:16,070 ja vaikka nämä eivät ole muuttujia, he lainasivat käyttöä dollarin merkki 907 01:06:16,070 --> 01:06:19,570 osoittaa lausekkeen jonkinlaista. 908 01:06:19,570 --> 01:06:23,550 Joka voidaan ympäröivät sulkeissa tai suluissa tai kahden suluissa, 909 01:06:23,550 --> 01:06:26,320 joka on eri tarkoitukseen. 910 01:06:26,320 --> 01:06:29,500 Yhden suluissa tässä on kirjoitusta kuten lainausmerkkeihin. 911 01:06:29,500 --> 01:06:32,720 Double Suluissa on todella laskutoimitus. 912 01:06:32,720 --> 01:06:35,380 On muitakin syntaxes, muut toiminnot. 913 01:06:35,380 --> 01:06:41,520 Backquote syntaksi on saatavilla Bash. 914 01:06:41,520 --> 01:06:46,780 Kuitenkin, tämä on edullista. On paljon helpompi lukea ja se mahdollistaa pesiviä. 915 01:06:46,780 --> 01:06:51,300 Voit olla sisällä $ (komento) toinen komento, 916 01:06:51,300 --> 01:06:54,590 jotain - 917 01:07:14,560 --> 01:07:18,210 Saan luettelon siellä. 918 01:07:18,210 --> 01:07:21,670 Se toimisi, jos minulla olisi backquote myös. 919 01:07:32,050 --> 01:07:38,470 Entä jos haluan tehdä jotain - 920 01:08:03,390 --> 01:08:06,430 Luultavasti ei oikeastaan ​​käytä tätä komentoa, 921 01:08:06,430 --> 01:08:14,160 mutta tämä sisäinen kirjoitusta kaikuja nimet, alkavat tiedostot, 922 01:08:14,160 --> 01:08:18,229 niin tämä kulkee ls-l ne tiedostot, 923 01:08:18,229 --> 01:08:20,500 ja sitten tämä yksi vain kaikuu tuotos. 924 01:08:21,729 --> 01:08:24,479 Luultavasti ei tee tätä, olisit vain tehdä kaiku tai ls, 925 01:08:24,479 --> 01:08:29,450 mutta tämä osoittaa, miten pesintää komennot toimii. 926 01:08:29,450 --> 01:08:34,380 Joten vain toinen ominaisuus täällä. 927 01:08:34,380 --> 01:08:37,450  Mainitsin tämän aikaisemmin, että kun sinulla on missä C-kuori, 928 01:08:37,450 --> 01:08:42,770 kirjoita toimii Bourne-tyyppinen kuoret paikallistamiseen komentoja. 929 01:08:48,939 --> 01:08:52,270 Sisäisiä komentoja, vain mitä sanoin siellä. 930 01:08:52,270 --> 01:08:54,640 Komennot ovat osa kuori, kuten missä. 931 01:08:54,640 --> 01:08:59,880 Kun kuori suorittaa komennon kuten ls, se etsii sitä kautta polku, 932 01:08:59,880 --> 01:09:03,029 pitää joissakin hakemistoon jonnekin, 933 01:09:03,029 --> 01:09:05,800 lukee, että muistiin, luo uusi kuori, 934 01:09:05,800 --> 01:09:08,960 lukee komento ls tai mitä kuoreen 935 01:09:08,960 --> 01:09:11,450 jos ympäristömuuttujat ovat jo paikalla, 936 01:09:11,450 --> 01:09:14,000 ja sitten se siirtää suorituksen siihen. 937 01:09:14,000 --> 01:09:18,319 Sisäänrakennettu komento, koodi, että komento on säiliön, 938 01:09:18,319 --> 01:09:21,460 joten kuori vain alkaa täytäntöönpanosta osana omaa koodiaan. 939 01:09:21,460 --> 01:09:24,569 jos on sellainen komento. Se todella saa nopeammin. 940 01:09:24,569 --> 01:09:28,380 Sen ei tarvitse lukea mitään muistiin, se on jo muistissa. 941 01:09:28,380 --> 01:09:32,460 Sisäisiä komentoja aina etusijalla komentoja samanniminen. 942 01:09:32,460 --> 01:09:36,050 Komennoilla hakemistojen polku voi olla sama nimi, 943 01:09:36,050 --> 01:09:39,090 komennot eri hakemistoja, tiedostoja eri hakemistoista. 944 01:09:39,090 --> 01:09:41,740 Joka tapahtuu aikaisemmin tiellä on yksi saat. 945 01:09:41,740 --> 01:09:43,770 Jos on sisäänrakennettu komento, saat aina sitä. 946 01:09:43,770 --> 01:09:47,890 Ei ole mitään keinoa antaa sille heikommassa etuoikeus komento polku. 947 01:09:47,890 --> 01:09:54,140 Jos haluat saada, että polku komennon, voit kirjoittaa koko polku. 948 01:09:54,140 --> 01:09:55,850 Jos oli komento missä polku jonnekin, 949 01:09:55,850 --> 01:09:58,440 voit kirjoittaa / bin / missä ja haluat saada sen. 950 01:09:58,440 --> 01:10:01,800 Jos et halua kirjoittaa koko polun, voit määritellä alias. 951 01:10:01,800 --> 01:10:06,310 Itse asiassa, jos annoit alias sama nimi kuin sisäänrakennettu komento, se toimisi 952 01:10:06,310 --> 01:10:08,790 koska alias määritelmää arvioidaan 953 01:10:08,790 --> 01:10:13,220 ennen kuoren määrittää, että se on sisäänrakennettu komento, joka olisi pantava täytäntöön. 954 01:10:18,810 --> 01:10:23,440 Sitten tämä saa hieman monimutkaisempi joitakin komentoja täällä. 955 01:10:23,440 --> 01:10:29,880 Joidenkin komentojen ovat todella valmiiden komentojen ja polku. 956 01:10:29,880 --> 01:10:34,140 Yksi niistä on kaiku, komento Käytin vähän aikaa sitten näissä esimerkeissä. 957 01:10:34,140 --> 01:10:37,410 Echo on komento polku ja se on jokaisessa kuori. 958 01:10:37,410 --> 01:10:40,580 Ne eivät välttämättä kaikki toimivat samalla tavalla. 959 01:10:40,580 --> 01:10:42,970 Se oli alun perin komento vain polku. 960 01:10:42,970 --> 01:10:45,280 Se on rakennettu vuonna kuorien myöhemmin. 961 01:10:45,280 --> 01:10:48,080 Koska on olemassa vaihtoehtoja, jotka riippuvat ympäristöstä 962 01:10:48,080 --> 01:10:52,970 ja komentorivivalinnat, valmiiden komentojen 963 01:10:52,970 --> 01:10:57,030 kirjoitettiin toimivat samoin kuin komento, joka oli ollut tiellä, 964 01:10:57,030 --> 01:10:59,670 se on epätodennäköistä ne olisi kirjoitettu näin 965 01:10:59,670 --> 01:11:01,720 jos komento ei ole jo kirjoitettu polku. 966 01:11:01,720 --> 01:11:06,180 Joten tämä on sivuvaikutuksia. Sen historia on vaikutuksia täällä. 967 01:11:06,180 --> 01:11:08,380 On olemassa vaihtoehtoja siellä. 968 01:11:14,280 --> 01:11:23,060 Mukana on myös vaihtoehto määritelty muuttuja tcsh nimeltään echo_style. 969 01:11:23,060 --> 01:11:27,700 Se on yksi näistä muuttujista, jotka voivat muuttaa siten, että kaiku toimii. 970 01:11:27,700 --> 01:11:30,910 On muitakin tapauksia, joissa voit määrittää muuttujaa 971 01:11:30,910 --> 01:11:36,290 joka muuttaa siten, että kuori, muun muassa sisäänrakennettu komento, toimii. 972 01:11:36,290 --> 01:11:38,130 Se ei vaikuta mitään muuta 973 01:11:38,130 --> 01:11:40,640 koska muut komennot eivät ole pääsyä Kuoren muuttujia, 974 01:11:40,640 --> 01:11:42,090 vain ympäristömuuttujat. 975 01:11:42,090 --> 01:11:45,360 Mutta kuori toiminta voi lukea Kuoren muuttujia. 976 01:11:45,360 --> 01:11:50,710 Se ei toimi csh. Se on vain tcsh. Se on yksi parannuksia. 977 01:11:58,540 --> 01:12:04,620 Jäsennys on sekvenssit, kun se arvioi metamerkit, 978 01:12:04,620 --> 01:12:08,140 kun se arvioi muuttujien nimet, historia viittauksia. 979 01:12:08,140 --> 01:12:11,830 On tietyssä järjestyksessä näitä asioita. 980 01:12:11,830 --> 01:12:13,730 Jos se tekee asioita tietyssä järjestyksessä 981 01:12:13,730 --> 01:12:16,080 ja saa jotain, joka on ilmaus lajitella 982 01:12:16,080 --> 01:12:20,650 joka on jo arvioitu, se ei arvioi sen uudelleen. 983 01:12:20,650 --> 01:12:24,520 Jos se saa sen, niin se vain siirtää merkkiä. 984 01:12:24,520 --> 01:12:29,920 Joten jos arviointi joitakin ilmauksia, kuten kirjoitusta 985 01:12:29,920 --> 01:12:36,850 tai vaihtuvana tai mitä tahansa aiheuttaa lauseke 986 01:12:36,850 --> 01:12:39,240 joka haluaisi arvioida, 987 01:12:39,240 --> 01:12:42,510 että toimii vain, jos tämä arviointi tapahtuu myöhemmin järjestyksessä. 988 01:12:42,510 --> 01:12:45,010 Toivottavasti en ole selvää siellä. 989 01:12:45,010 --> 01:12:50,460 Että jäsentämiseen järjestyksessä, operaation C-kuori, 990 01:12:50,460 --> 01:12:56,490 ei ole sama sisäisiä komentoja, koska se on ei-valmiiden komentojen. 991 01:12:56,490 --> 01:12:58,890 En ole varma Bash siellä. 992 01:12:58,890 --> 01:13:02,450 Jos esimerkiksi komentotulkkimuuttujaan tuotettu historia viittaus, 993 01:13:02,450 --> 01:13:04,230 se todennäköisesti ei mene takaisin historiassa. 994 01:13:04,230 --> 01:13:06,010 Se olisi vain saada huutomerkki. 995 01:13:06,010 --> 01:13:08,840 Itse asiassa, voimme vain yrittää, että juuri nyt. 996 01:13:09,720 --> 01:13:18,240 set = ja meidän täytyy laittaa tämä sinne. 997 01:13:30,690 --> 01:13:34,580 Hei, odota. Anteeksi. Tein tämän Bash. Halusin tehdä sen täältä. 998 01:13:53,470 --> 01:13:56,080 Katso, joten se ei arvioinut, että historia viite 999 01:13:56,080 --> 01:14:00,520 koska se oli jo ohi pisteen arvioida historian ilmauksia 1000 01:14:00,520 --> 01:14:02,720 kun se arvioidaan muuttuja. 1001 01:14:02,720 --> 01:14:05,550 Niin, että 1 vaikutus jäsentämiseen. 1002 01:14:05,550 --> 01:14:08,760 Ja vielä, sisäänrakennettu komentoja ei tehdä samalla tavalla. 1003 01:14:08,760 --> 01:14:11,230 Selvä. Mennään seuraavaan täällä. 1004 01:14:11,230 --> 01:14:16,060 Tämä on tarkoitus olla 1 linja, mutta se on helpompi lukea. 1005 01:14:19,130 --> 01:14:21,530 Mitä se tekee? 1006 01:14:21,530 --> 01:14:28,640 Muistatte ehkä, että voimme arvioida tähdellä kuten tiedostonimi jokerihakua 1007 01:14:28,640 --> 01:14:33,890 ja muitakin tiedostonimi korvausmerkkejä kuten kysymysmerkki ja kiinnike ilmaisuja. 1008 01:14:33,890 --> 01:14:39,000 Tällainen arviointi on nimeltään ohituslausekkeita. 1009 01:14:39,000 --> 01:14:46,290 asettaa noglob alussa tämä komento sanoo älä tee sitä. 1010 01:14:46,290 --> 01:14:53,370 unset noglob sanoo palata näin. 1011 01:14:53,370 --> 01:14:56,440 Huomaa, että joukko loraus ei olisi tällainen vaikutus. 1012 01:14:56,440 --> 01:15:00,800 Tavallisella kielellä, asettaa loraus tai katkaistu noglob näyttäisi olevan vastaavaa, 1013 01:15:00,800 --> 01:15:03,290 mutta täällä se ei ole. Se on unset noglob. 1014 01:15:05,120 --> 01:15:07,910 Nyt tset. tset seisoi terminaalin asetettu. 1015 01:15:07,910 --> 01:15:11,840 Sitä ei käytetä kovin usein nyt, mutta ennen ikkunointijärjestelmissä tuli saataville 1016 01:15:11,840 --> 01:15:15,760 ja teillä oli yhden päätteen, saatat joutua millainen. 1017 01:15:15,760 --> 01:15:18,700 Ja jos jotain on tulossa Ethernet tai verkosta, 1018 01:15:18,700 --> 01:15:21,120 kannattaa sanoa se VT100. 1019 01:15:21,120 --> 01:15:26,630 VT100 on eräänlainen standardi Terminal-liiketoiminnan. Se tulee DEC terminaaliin. 1020 01:15:26,630 --> 01:15:35,270 Jos vain kellotaulu - huomaa, että? Tämä juontaa juurensa tavalla, vai? 1021 01:15:35,270 --> 01:15:39,520 Joten jos emme vain tset tänne, 1022 01:15:39,520 --> 01:15:45,250 jos en vain tset, se nollaus minun terminaali, mutta et nähnyt mitään. 1023 01:15:45,250 --> 01:15:47,340 Se ei oikeastaan ​​muuta mitään. 1024 01:15:47,340 --> 01:15:48,620 -S 1025 01:15:49,900 --> 01:15:51,480 Okei. 1026 01:15:51,480 --> 01:15:53,350 setenv TERM xterm-color. 1027 01:15:53,350 --> 01:15:57,080 Tiedämme jo, että termi on asetettu niin, joten mikään ei muuttunut. 1028 01:15:57,080 --> 01:15:58,860 Sillä tavalla me haluaisi tehdä sitä. 1029 01:15:58,860 --> 01:16:07,080 Mutta huomaa, että tätä komentoa, tset-s, vain lähtö näitä komentoja. Se ei juossut niitä. 1030 01:16:07,080 --> 01:16:09,770 Se ei komennoilla, se tulostaa ne. 1031 01:16:09,770 --> 01:16:13,650 Joten tämä on tarkoitus tuottaa komentoja, joka sitten ajaa. 1032 01:16:13,650 --> 01:16:16,360 Muistatko komento tiedoston juuri näytin teille oli Q siinä. 1033 01:16:16,360 --> 01:16:18,910 Tehdäänpä että. 1034 01:16:18,910 --> 01:16:23,750 Q estää joitakin tuotos, mutta sillä ei ole merkitystä tässä, kuten näette. 1035 01:16:23,750 --> 01:16:27,980 Teen vain, että näyttää, että se ei ole väliä. 1036 01:16:27,980 --> 01:16:31,870 Tämä on backquote syntaksin. 1037 01:16:31,870 --> 01:16:35,340 Huomautus backquote täällä, backquote täällä. 1038 01:16:35,340 --> 01:16:37,680 Olen jättämällä nämä asiat täällä. 1039 01:16:37,680 --> 01:16:39,570 Nämä tapaukset kertoa se, mitä tehdä 1040 01:16:39,570 --> 01:16:42,050 kun on kyse tietyntyyppisten päätelaitteiden - 1041 01:16:42,050 --> 01:16:45,400 Ethernet, verkko, soittoyhteyttä, mitä olet. 1042 01:16:45,400 --> 01:16:48,050 Sillä ei ole väliä tänne, koska emme oikeastaan ​​tee mitään näistä asioista. 1043 01:16:48,050 --> 01:16:49,720 Olen vain havainnollistaa komento. 1044 01:16:49,720 --> 01:16:55,170 Jos teen tämän kanssa backquote, mitä aion saada? 1045 01:16:55,170 --> 01:17:00,210 Myös huomata tässä, että tämä sisälsi joukon noglob ja unset noglob, 1046 01:17:00,210 --> 01:17:02,630 joten ne ovat nyt tarpeettomia määritelmään. 1047 01:17:02,630 --> 01:17:05,380 Se ei ollut aina totta, mutta nyt he sisällytetty tähän komennon. 1048 01:17:05,380 --> 01:17:08,890 Mutta katsotaanpa mitä tapahtuu, jos teen sen 1049 01:17:08,890 --> 01:17:12,570 ja mene rivin alkuun Ctrl ja teen sen. 1050 01:17:14,380 --> 01:17:18,040 Okei, asettaa: Komento ei löydy. Se on tavallaan outoa, eikö olekin? 1051 01:17:18,040 --> 01:17:20,570 sarja on tunnettu komento. Se on osa kuori. 1052 01:17:20,570 --> 01:17:24,040 set: Komento ei löydy? Miksi näin? 1053 01:17:24,040 --> 01:17:26,790 Hmm. No, ajattele tätä. 1054 01:17:26,790 --> 01:17:31,100 Se on käynnissä backquote kirjoitusta, 1055 01:17:31,100 --> 01:17:37,430 ja että tapahtuu tietty osa sekvenssin jäsentämiseen komennon. 1056 01:17:37,430 --> 01:17:40,360 sarja on sisäänrakennettu komento. 1057 01:17:40,360 --> 01:17:43,900 Joten aikaa se, että kirjoitusta, 1058 01:17:43,900 --> 01:17:48,280 se on jo mennyt ohi pisteen tunnistaa sisäisiä komentoja. 1059 01:17:48,280 --> 01:17:51,900 Joten se kohtelee asettaa ikään kuin se olisi komento polku. 1060 01:17:51,900 --> 01:17:55,440 Tarpeetonta sanoa, se ei löydä sitä ja saat virheen. 1061 01:17:55,440 --> 01:17:59,300 Hyvin. On esimerkki jäsentämiseen järjestyksessä. 1062 01:17:59,300 --> 01:18:01,460 Ja mitä me teemme asialle? 1063 01:18:01,460 --> 01:18:04,800 Huomata tämän erittäin mielenkiintoinen komennon täällä, eval. 1064 01:18:04,800 --> 01:18:06,530 Mitähän se tekee. 1065 01:18:06,530 --> 01:18:08,760 Jos katsot käsikirja - ja haluan vain tehdä sitä 1066 01:18:08,760 --> 01:18:12,000 osoittaa, miten sekava nämä käsikirjat ovat - 1067 01:18:12,000 --> 01:18:19,400 mies tcsh, sekava oppaat, löytää asioita täällä ei ole helppoa myöskään. 1068 01:18:19,400 --> 01:18:31,850 Tässä sitä mennään, eval arg, jotta voimme olla 1 tai useampia argumentteja 1069 01:18:31,850 --> 01:18:34,090 ja siellä on lista asioista siellä. 1070 01:18:34,090 --> 01:18:37,730 Kohtelee väitteet tuloina kuori 1071 01:18:37,730 --> 01:18:43,600 ja suorittaa tuloksena komennot nykyisessä kuori. 1072 01:18:43,600 --> 01:18:46,900 Tämä on yleensä käytetään suorittaa komentoja syntyy seurauksena komennon 1073 01:18:46,900 --> 01:18:51,310 tai muuttuva korvaaminen koska jäsentämiseen tapahtuu ennen näitä vaihdot. 1074 01:18:51,310 --> 01:18:52,580 Erittäin hyvä. 1075 01:18:52,580 --> 01:18:54,740 Ja tässä ne jopa viitata tset komento näytteen käyttöön 1076 01:18:54,740 --> 01:18:57,700 jollainen juuri näytin teille. 1077 01:18:57,700 --> 01:19:00,440 Nyt minun täytyy saada ikkunan takaisin hyödyllinen paikka. 1078 01:19:03,150 --> 01:19:07,800 Mennään tänne ja näemme, että eval käytetään juuri ennen sitä. 1079 01:19:07,800 --> 01:19:14,010 Katsotaan mitä tapahtuu, jos laitamme - nyt mennään ylös nuolia komennon 1080 01:19:14,010 --> 01:19:20,940 and Control alkuun, eval. 1081 01:19:20,940 --> 01:19:22,850 Okei, niin se toimii. 1082 01:19:22,850 --> 01:19:26,440 Kun teet eval, se kestää mitä tulee sen jälkeen ja tekee siitä komennon. 1083 01:19:26,440 --> 01:19:29,460 Näin voit olennaisesti jäsentää sitä kahdesti. 1084 01:19:29,460 --> 01:19:33,710 Kohta täällä kulkee tämän komennon sisällä lainausmerkkeihin, 1085 01:19:33,710 --> 01:19:36,210 saa lähtö. 1086 01:19:36,210 --> 01:19:42,850 Tuotos on tarkoitus ajaa kuin komennot täällä, kuten nämä 1087 01:19:42,850 --> 01:19:45,890 tässä yksi ja tämä yksi. 1088 01:19:45,890 --> 01:19:50,100 Joten ne komennot ovat nyt täällä tässä järjestyksessä, 1089 01:19:50,100 --> 01:19:58,950 mutta nämä ovat sisäisiä komentoja ja se voi saada niitä heti. 1090 01:19:58,950 --> 01:20:06,440 Joten menemme eval, eval poimii että ylös, alkaa koko juttu uudestaan, ja se toimii. 1091 01:20:06,440 --> 01:20:18,460 Esimerkiksi molemmat backquoting, eval, jäsennys, seuraukset jäsentämiseen, 1092 01:20:18,460 --> 01:20:21,910 ja komento, joka on todennäköisesti hyvin vähän hyötyä sinulle nykyään. 1093 01:20:21,910 --> 01:20:25,540 Okei. Okei, umask. 1094 01:20:25,540 --> 01:20:32,160 Katsotaanpa tämän komennon täällä, umask 022. Mitähän se tekee. 1095 01:20:32,160 --> 01:20:38,420 Toivotaan vain kirjoita umask mitään sen jälkeen. 22. Okei. 1096 01:20:38,420 --> 01:20:44,350 022 ja tehdä se uudelleen. 1097 01:20:44,350 --> 01:20:48,580 Kuten arvata saattoi, umask ilman argumentteja kertoo nykyisen maskin; 1098 01:20:48,580 --> 01:20:51,760 umask argumenteilla tekee sitä, mutta se oli yksi olen jo ollut. 1099 01:20:51,760 --> 01:20:53,800 Mitä 022 tarkoittaa? 1100 01:21:01,650 --> 01:21:07,080 Nämä ovat täällä takaama tiedoston. 1101 01:21:07,080 --> 01:21:11,440 Ne määrittävät, kuka saa lukea tai kirjoittaa tai suorittaa tiedoston. 1102 01:21:11,440 --> 01:21:16,560 Suojaukset kutsutaan myös käyttöoikeudet. 1103 01:21:16,560 --> 01:21:21,390 R tarkoittaa lukea, w kirjoittaa, 1104 01:21:21,390 --> 01:21:25,500 ja x, joka ei ole siellä läsnä sanoista suorittaa. 1105 01:21:25,500 --> 01:21:27,260 On 3 kategoriaa siellä. 1106 01:21:27,260 --> 01:21:33,540 Viimeksi 3 elementit ovat käyttäjäryhmän. Näitä koske minua, käyttäjä. 1107 01:21:33,540 --> 01:21:36,870 Nämä 3 tässä pätevät ryhmään. 1108 01:21:36,870 --> 01:21:41,590 Tiedosto kuuluu 1 ryhmään, käyttäjä voi kuulua useaan ryhmään, 1109 01:21:41,590 --> 01:21:47,150 mutta jos käyttäjä on ryhmä, johon tämä tiedosto kuuluu, 1110 01:21:47,150 --> 01:21:51,090 sitten nämä suojaukset sovelletaan häneen, jos hän ei ole käyttäjä. 1111 01:21:51,090 --> 01:21:54,230 Ja tämä on kaikki muutkin. 1112 01:21:55,540 --> 01:21:57,690 Nämä luokat ovat toisensa poissulkevia. 1113 01:21:57,690 --> 01:21:59,750 Käyttäjä suojaa sovelletaan häneen, 1114 01:21:59,750 --> 01:22:03,780 Suojaukset jäseniin sovelletaan muu ryhmä kuin käyttäjä, 1115 01:22:03,780 --> 01:22:08,110 ja muut suojaukset koskevat vain muille kuin käyttäjän ja ryhmän jäsenet. 1116 01:22:08,110 --> 01:22:12,320 Jos on r tai aw tai x, se tarkoittaa, että suoja on myönnetty. 1117 01:22:12,320 --> 01:22:13,950 Jos on yhdysmerkki, se tarkoittaa, että se ei ole. 1118 01:22:13,950 --> 01:22:16,690 On todellakin olemassa muita asioita, jotka voidaan laittaa tänne Näiden lisäksi 1119 01:22:16,690 --> 01:22:18,350 joita en pääse nyt. 1120 01:22:18,350 --> 01:22:24,450 Umask määrittelee oletuksena tiedostoja, jotka luot. 1121 01:22:24,450 --> 01:22:28,580 Ja maski, pohjimmiltaan se sanoo bittiä, että et ole asetettu. 1122 01:22:28,580 --> 01:22:30,450 Miten tämä on tullut bittiä? 1123 01:22:30,450 --> 01:22:33,240 Jos luulet kaikkien näiden oktaalinumerona, 1124 01:22:33,240 --> 01:22:42,120 tämä on 1 s bitti, tämä on 2s, tämä on 4s. 1125 01:22:42,120 --> 01:22:45,840 Joten 0 kautta 7 1126 01:22:45,840 --> 01:22:51,770 kuvailla mitä yhdistelmä R: n, W: n ja x: n teillä on nämä 3 1127 01:22:51,770 --> 01:22:53,710 ja sitten saman verran näistä ja sitten näitä. 1128 01:22:53,710 --> 01:23:12,030 Joten 022 tarkoittaa 0 muille, 2 ryhmän 2 käyttäjälle. 1129 01:23:12,030 --> 01:23:15,870 Mutta tämä on maski. Maski on mitä sinulla ei ole. 1130 01:23:19,380 --> 01:23:20,610 Olen pahoillani. Annoin sinulle asioita väärässä järjestyksessä. 1131 01:23:20,610 --> 01:23:25,620 Se on ensimmäinen 3. Nämä 3 ovat käyttäjä, nämä 3 ovat ryhmä, nämä 3 ovat muita. 1132 01:23:25,620 --> 01:23:27,970 Anteeksi Annoin sinulle nämä väärässä järjestyksessä. 1133 01:23:27,970 --> 01:23:31,910 0, joka on ensimmäinen niistä, ei näy arvoa, 1134 01:23:31,910 --> 01:23:35,430 mutta jos numero ei ole olemassa, se on 0. 1135 01:23:35,430 --> 01:23:38,370 Tällä tarkoitetaan kaikkia 3 näistä olisi sallittua. 1136 01:23:38,370 --> 01:23:41,550 Huomaa, että tämä erityisesti yhden x ei ole sallittua. 1137 01:23:41,550 --> 01:23:44,090 Syynä on se, että kuori pystyy määrittämään 1138 01:23:44,090 --> 01:23:46,260 onko tiedosto tulisi suorittaa vai ei. 1139 01:23:46,260 --> 01:23:49,800 Koska tämä ei ole suoritettava tiedosto, se ei ole asettanut x. 1140 01:23:49,800 --> 01:23:54,000 2 tarkoittaa, että kirjoitusoikeudet, toinen luokka täällä, 1141 01:23:54,000 --> 01:23:56,500 yksi keskellä, evätään. 1142 01:23:56,500 --> 01:23:58,500 Joten jälleen, nämä ovat asioita, joita se kielsi. 1143 01:23:58,500 --> 01:24:02,080 No, x on sallittua, mutta se ei ole täällä, koska se ei ole suoritettavia 1144 01:24:02,080 --> 01:24:04,260 ja vastaavasti muille. 1145 01:24:04,260 --> 01:24:08,880 Niin, että yhteinen umask. 1146 01:24:08,880 --> 01:24:14,630 Toinen yleinen yksi on 700 - anna itsellesi kaiken ja kukaan muu mitään. 1147 01:24:14,630 --> 01:24:17,040 Ja on muitakin mahdollisuuksia. 1148 01:24:21,340 --> 01:24:27,110 Menen takaisin siihen. Käyttämällä historia voin hakea takaisin, että LWH siellä. 1149 01:24:27,110 --> 01:24:30,210 Okei. Joten tässä, nämä ovat kuoret. 1150 01:24:30,210 --> 01:24:36,020 Bash, omistaja, joka on järjestelmä huomioon, voi tehdä kaikkea. 1151 01:24:36,020 --> 01:24:41,210 Ryhmä ja kaikki muu voi tehdä lukea tai suorittaa mutta ei kirjoittaa. 1152 01:24:41,210 --> 01:24:44,570 Tämä yksi ei edes salli omistaja kirjoittaa sitä. 1153 01:24:44,570 --> 01:24:46,460 Jos omistaja halusi kirjoittaa sitä, järjestelmä tilin, 1154 01:24:46,460 --> 01:24:48,020 hänen täytyisi muuttaa suojaa ensin. 1155 01:24:48,020 --> 01:24:53,940 Mutta jälleen kerran, umask asettaa oletuksena peittämällä se, 1156 01:24:53,940 --> 01:24:57,160 ilmoittamalla bittiä, joka ei voi asettaa. 1157 01:24:57,160 --> 01:25:04,380 Tämä on tyypillisesti joku alustustiedostoja, joka on. Cshrc C-kuori 1158 01:25:04,380 --> 01:25:07,500 tai. profiilin Bourne-tyyppinen kuoret. 1159 01:25:07,500 --> 01:25:12,520 Se voi olla muuallakin, jos on olemassa muita alustustiedostoja järjestelmään. 1160 01:25:12,520 --> 01:25:14,610 Joka tapauksessa, se on umask. 1161 01:25:14,610 --> 01:25:18,180 Siinä on jotain sellaista outoa täällä, 1162 01:25:18,180 --> 01:25:22,800 ja että on, miksi on olemassa yhden komennon tähän? 1163 01:25:22,800 --> 01:25:28,690 Jos olisin kirjoitan tätä, haluan tehdä muuttuja, umask = jotain arvoa. 1164 01:25:28,690 --> 01:25:31,100 Miksi on olemassa Komentomiehistö juuri tähän tarkoitukseen? 1165 01:25:31,100 --> 01:25:34,560 Syy on tämä vain menee takaisin alkuperä Unix. 1166 01:25:34,560 --> 01:25:41,050 Unix oli vain joitakin ohjelmistoprojektina Bell Labs 1970-luvun alussa. 1167 01:25:41,050 --> 01:25:42,610 Ihmiset vain sai yhdessä ohjelmassa. 1168 01:25:42,610 --> 01:25:45,290 He eivät koskaan tarkoitus siitä tulee maailmanlaajuinen käyttöjärjestelmä. 1169 01:25:45,290 --> 01:25:47,250 Eri ihmiset kirjoittivat eri puolilla ajattelematta hyvin paljon 1170 01:25:47,250 --> 01:25:49,790 siitä, miten he aikovat käyttää - varsin ylimalkaisia. 1171 01:25:49,790 --> 01:25:53,290 Ja se tuli yhdessä kuin että, ja se on edelleen kuin että joiltakin osin. 1172 01:25:53,290 --> 01:25:57,930 Niin että heijastaa historiaa, ja vielä on nämä epäjohdonmukaisuudet ja parittomat sen osia. 1173 01:25:57,930 --> 01:26:00,750 Okei. Seuraava kukaan täällä. 1174 01:26:08,170 --> 01:26:11,000 Kuten kirjoitin aiemmin, C-kuori ei todellakaan käytetä kovin paljon ohjelmointia, 1175 01:26:11,000 --> 01:26:12,420 vaikka se voi olla. 1176 01:26:12,420 --> 01:26:15,080 Se suorittaa hitaammin, jälleen kompromissi interaktiivinen käyttö, 1177 01:26:15,080 --> 01:26:17,820 joka on enemmän jalostuspaikat kuin nopeus, 1178 01:26:17,820 --> 01:26:20,710 joka voi tehdä ilman käsittelyä. 1179 01:26:20,710 --> 01:26:28,320 Lisäominaisuuksia lisätty Bourne kuoreen Korn ja Bourne-uudelleen kuoret 1180 01:26:28,320 --> 01:26:32,120 eivät näytä hidastavat heitä, ja en tiedä miksi näin on. 1181 01:26:32,120 --> 01:26:36,310 Se voi vain olla parempi ohjelma, mutta en ole voinut tietää. 1182 01:26:36,310 --> 01:26:40,420 Speed ​​tässä todellisuudessa ei ole niin iso juttu, vaikka se on mainittu. 1183 01:26:40,420 --> 01:26:43,690 Syynä on, että komentoriviskriptejä todella saada melko nopeasti. 1184 01:26:43,690 --> 01:26:46,450 Jos on paljon komentoja kuten laskennallisin ohjelma, 1185 01:26:46,450 --> 01:26:49,110 luultavasti ei tee sitä shell script. 1186 01:26:49,110 --> 01:26:51,450 Toiminta on melko yksinkertainen ja suoraviivainen. 1187 01:26:51,450 --> 01:26:53,960 Ne, jotka olen kokenut, että ovat liian hitaita 1188 01:26:53,960 --> 01:26:57,110 liittyy toistuvia sovelluksia hidasta komentoja. 1189 01:26:57,110 --> 01:27:00,480 Mainitsin aikaisemmin stream editor sed. Tämä komento on hidasta. 1190 01:27:00,480 --> 01:27:03,760 Jos suoritat sed monta kertaa, saat hidas käsikirjoituksen, mutta se ei ole kuori, joka on hidas. 1191 01:27:03,760 --> 01:27:07,920 Suorittamalla se Bourne Shell ei ole paljon nopeammin kuin suorittamalla se C-kuori, 1192 01:27:07,920 --> 01:27:10,070 vaikka olemassa ehkä joitakin etuja siellä. 1193 01:27:10,070 --> 01:27:12,760 Lisäohjelmointia ominaisuuksia, toisaalta, 1194 01:27:12,760 --> 01:27:17,920 ovat merkittäviä syitä, miksi sinun pitäisi käyttää Bourne-tyyppinen kuoret. 1195 01:27:17,920 --> 01:27:21,390 C-shell on outoa ominaisuuksia sitä - 1196 01:27:21,390 --> 01:27:25,250 se, että et tiedä, jos muuttuja on komentotulkkimuuttujaan tai ympäristömuuttujien kautta. 1197 01:27:25,250 --> 01:27:27,440 Se voi olla hyvin hämmentävää. 1198 01:27:27,440 --> 01:27:32,170 Se ei ole niin helppo kirjoittaa 1199 01:27:32,170 --> 01:27:35,930 vain perustuu omaan kokemukseen ohjelmatyön muilla kielillä. 1200 01:27:35,930 --> 01:27:41,350 Luulen saatat löytää Bourne-tyyppinen kuoret enemmän sopusoinnussa oman kokemuksen. 1201 01:27:43,730 --> 01:27:49,270 Joitakin skriptejä, mutta voi olla tuhansia rivejä pitkä. 1202 01:27:49,270 --> 01:27:52,450 Ne, jotka olen nähnyt käytetään paikata käyttöjärjestelmissä. 1203 01:27:52,450 --> 01:27:55,450 Nämä voivat suorittaa hyvin hitaasti, mutta et suorita näitä kovin usein. 1204 01:27:55,450 --> 01:27:57,180 Vasta kun olet tekemässä kauneuspilkku, 1205 01:27:57,180 --> 01:27:59,450 ja se on vain järjestelmä johtaja, joka tekee niitä asioita, 1206 01:27:59,450 --> 01:28:01,840 joten se ei ole oikeastaan ​​paljon asiaa. 1207 01:28:01,840 --> 01:28:06,980 Ne, jotka ovat satoja rivejä pitkä tosiasiallisesti toteuttaa melko nopeasti. 1208 01:28:06,980 --> 01:28:10,540 Viittaavat tässä, mitä nämä parannukset? 1209 01:28:10,540 --> 01:28:13,170 Olen jo maininnut muutamia niistä - paneelit, laskelmat, 1210 01:28:13,170 --> 01:28:20,540 $ () lauseke laskelmien Bash kuori, 1211 01:28:20,540 --> 01:28:23,050 muu kirjoitusta. 1212 01:28:23,050 --> 01:28:25,360 On olemassa erilaisia ​​testaus-komentoja 1213 01:28:25,360 --> 01:28:29,350 jolla voit tehdä ehdollisia testejä olemassaolosta tiedoston tai muita asioita. 1214 01:28:29,350 --> 01:28:34,790 Kestää täällä, tämä komento täällä. 1215 01:28:34,790 --> 01:28:38,480 Mitä tämä tehdä, ja miksi kukaan käyttää sitä? 1216 01:28:51,170 --> 01:28:52,990 printenv variableName. 1217 01:28:52,990 --> 01:28:56,130 Tiedämme, mitä printenv tekee. Se kertoo muuttujan arvon. 1218 01:28:56,130 --> 01:29:00,850 Ja printenv variableName eivät kerro meille kovin paljon, koska ei ole sellaista muuttujaa. 1219 01:29:03,550 --> 01:29:05,120 Tyhjä. 1220 01:29:05,120 --> 01:29:08,440 Mutta katsotaanpa antaa sille jotain mielekästä. 1221 01:29:13,420 --> 01:29:16,800 Se ei ole sielläkään. Okei. Luulen koskaan määritellä sitä. 1222 01:29:16,800 --> 01:29:18,020 Toivotaan vain tsekkaa ympäristössä. 1223 01:29:18,020 --> 01:29:20,900 Tämä on toinen komento, jolla voit tarkastaa oman ympäristön. 1224 01:29:20,900 --> 01:29:24,470 On vanha kunnon EDITOR, näimme ennen. 1225 01:29:42,360 --> 01:29:44,120 Mitä se tekee? 1226 01:29:44,120 --> 01:29:48,050 Täällä meillä on backquote ilme. 1227 01:29:48,050 --> 01:29:50,370 Muista tämä on C-kuori. 1228 01:29:50,370 --> 01:29:54,850 Joten printenv Editor antaa meille arvon editori. Se on vi. 1229 01:29:54,850 --> 01:29:59,790 Ja sitten se asettaa tämän arvon muuttujaan, asetettu komento. 1230 01:29:59,790 --> 01:30:02,860 Joten nyt jos en echo $, saan vi. 1231 01:30:02,860 --> 01:30:05,850 Se ei näytä kovin hyödyllinen. 1232 01:30:05,850 --> 01:30:08,080 Kuitenkin, se todella ei ole tarkoitusta. 1233 01:30:08,080 --> 01:30:12,260 Koska emme tiedä, onko muuttuja on komentotulkkimuuttujaan tai ympäristömuuttujan 1234 01:30:12,260 --> 01:30:16,280 käyttämällä dollarin merkki arvioinnin syntaksin, voimme käyttää printenv 1235 01:30:16,280 --> 01:30:19,460 varmista, että se on ympäristömuuttujan. 1236 01:30:19,460 --> 01:30:22,550 Joten jos olisi komentotulkkimuuttujaan editori, tämä ei olisi saanut sitä. 1237 01:30:22,550 --> 01:30:25,640 Tämä toimii vain ympäristömuuttujan. 1238 01:30:25,640 --> 01:30:28,370 Jos oli komentotulkkimuuttujaan ja halusin sen arvo, 1239 01:30:28,370 --> 01:30:29,980 Minun pitäisi keksiä jokin muu tapa tehdä se. 1240 01:30:29,980 --> 01:30:33,530 Yksi tapa tehdä se olisi tekemällä joukko ja putkistot. 1241 01:30:33,530 --> 01:30:36,130 Tämä on yksi metamerkit, erikoismerkkejä. 1242 01:30:36,130 --> 01:30:38,370 Se lähettää tuotoksen asetettu jotain muuta. 1243 01:30:38,370 --> 01:30:40,650 Katsotaan, mitä voisimme löytää siellä. 1244 01:30:40,650 --> 01:30:49,340 Mitään. Okei. Katsotaan mitä siellä kaikki yhdessä. 1245 01:30:49,340 --> 01:30:53,580 Se oli echo_style, yksi aiemmin mainitsin. Okei, tehdään se. 1246 01:31:02,460 --> 01:31:06,230 Muista aiemmin mainitsin, echo_style 1247 01:31:06,230 --> 01:31:08,410 määrittää miten kaiku komento ajaa. 1248 01:31:08,410 --> 01:31:10,940 BSD sanoista Berkeley Standard Distribution. 1249 01:31:10,940 --> 01:31:13,200 Tämä on Berkeley Unix 1970. 1250 01:31:13,200 --> 01:31:16,630 Se on yksi niistä tavoista, että kaiku voi ajaa. 1251 01:31:16,630 --> 01:31:22,310 Asetus echo_style tätä arvoa TC-kuori aiheuttaa echo käyttäytyä tällä tavalla. 1252 01:31:22,310 --> 01:31:27,670 Joten aseta tekee sen, mutta asettaa vain saa Kuoren muuttujia. 1253 01:31:27,670 --> 01:31:35,430 Se ei löydä EDITOR, joka ei ole kuori muuttuja. 1254 01:31:36,870 --> 01:31:38,050 Mitään. 1255 01:31:38,050 --> 01:31:39,660 Niin, että yksi tapa erottaa ne. 1256 01:31:39,660 --> 01:31:42,000 Mutta se, että sinun täytyy mennä läpi joitakin outoja komennolla kuten että 1257 01:31:42,000 --> 01:31:45,500 erottamaan Kuoren muuttujia tai ympäristömuuttujat 1258 01:31:45,500 --> 01:31:49,970 esittää sellaista epäkäytännöllinen luonteesta C-kuori joihinkin tarkoituksiin. 1259 01:31:52,290 --> 01:31:57,960 Ja nyt, viimeinen ja ehkä vähiten, tämä on man-sivuilta. 1260 01:31:57,960 --> 01:32:03,190 Ne, jotka ehkä tiedätte, ihminen on komento lyhyt käsin. 1261 01:32:03,190 --> 01:32:08,610 Man-sivuilta löytyy kuoret on vaikea lukea. He ovat hyvin pitkiä. 1262 01:32:08,610 --> 01:32:14,060 He järjestetty tavalla, joka voi vaikeuttaa löytää mitä etsit. 1263 01:32:14,060 --> 01:32:15,980 Joten jos etsit jotain tarkoitusta varten 1264 01:32:15,980 --> 01:32:20,050 et voi tietää, jos tätä varten on komentotulkkimuuttujaan tai jotain muuta, 1265 01:32:20,050 --> 01:32:21,630 joten et voi tietää mistä etsiä sitä. 1266 01:32:21,630 --> 01:32:25,030 Voit etsiä eri jouset, mutta jouset ovat usein toistuvaa. 1267 01:32:25,030 --> 01:32:27,640 Niin se yleensä vaikea lukea. 1268 01:32:27,640 --> 01:32:33,810 Me vain katsoi TC-kuori man-sivulta hieman ennen löytää eval-komentoa. 1269 01:32:33,810 --> 01:32:36,610 Jotkut asiat menevät nopeammin. 1270 01:32:36,610 --> 01:32:38,860 Yksi lähestymistapa on etsiä merkkijonoa. 1271 01:32:38,860 --> 01:32:40,360 Voit käyttää hakulaite. 1272 01:32:40,360 --> 01:32:49,080 Hakulaite on slash etsiä komentoa tai merkkijono sisällä hakulaite toimintaa. 1273 01:32:49,080 --> 01:32:52,830 Mies oletusarvoisesti käyttää hakulaitteita, joko enemmän tai vähemmän. 1274 01:32:52,830 --> 01:32:56,560 En tiedä, jos olet perehtynyt näiden, mutta ne voivat osoittaa tiedostoja vähän kerrallaan. 1275 01:32:56,560 --> 01:33:00,550 Olen käyttänyt vähemmän näyttää nämä erityisesti tiedostoja meillä täällä. 1276 01:33:00,550 --> 01:33:03,300 Voit etsiä sisällä on. 1277 01:33:03,300 --> 01:33:04,880 Voit kokeilla erilaisia ​​hakusanoja. 1278 01:33:04,880 --> 01:33:08,420 Myös man-sivuja erilaisissa käyttöjärjestelmissä ei voi olla sama. 1279 01:33:08,420 --> 01:33:11,130 Ne voivat olla erillisiä sivuja csh ja tcsh. 1280 01:33:11,130 --> 01:33:14,500 He eivät ole Mac, mutta ne saattavat olla, jos ne ovat erillisiä komentoja. 1281 01:33:14,500 --> 01:33:19,000 Jos sh ei oikeastaan ​​soita Bash, ei luultavasti olisi erillinen man-sivulta. 1282 01:33:19,000 --> 01:33:25,820 Joissakin laitteissa on erillinen man-sivuja vain C-shell sisäisiä komentoja. 1283 01:33:25,820 --> 01:33:30,250 Joskus jos haluat lukea kuvauksen sisäänrakennettu komento 1284 01:33:30,250 --> 01:33:35,350 se on myös polku, kuten kaiku, sinun täytyy lukea man sivun että komento echo 1285 01:33:35,350 --> 01:33:37,610 selvittää, miten se toimii kuin sisäänrakennettu komento 1286 01:33:37,610 --> 01:33:39,760 vaikka et soittaa sisäänrakennettu komento. 1287 01:33:41,630 --> 01:33:46,090 Se haittapuoli, että käyttöjärjestelmä yleensä, ei vain kuoret, 1288 01:33:46,090 --> 01:33:50,710 vaikka kuoret erityisesti man-sivut ovat melko pitkiä, 1289 01:33:50,710 --> 01:33:56,180 Osasyynä lisännyt hyödyllisiä ominaisuuksia niille, jotka voivat olla positiivisia. 1290 01:33:56,180 --> 01:34:00,290 Okei. Onko kysyttävää? Mitään aiheita haluat tuoda esiin? 1291 01:34:00,290 --> 01:34:03,390 Mitään merkitystä tässä? 1292 01:34:04,540 --> 01:34:07,100 No, se on ollut erittäin mukava jutella kaikille. 1293 01:34:07,100 --> 01:34:09,690 Toivottavasti sait jotain tästä seminaarin 1294 01:34:09,690 --> 01:34:13,080 että on hyötyä sinua tulevissa haasteissa. 1295 01:34:17,330 --> 01:34:19,000 [CS50.TV]