1 00:00:00,000 --> 00:00:02,320 >> [Seminar - Unix skeljar, Umhverfi] 2 00:00:02,320 --> 00:00:04,180 [Douglas Kline - Harvard University] 3 00:00:04,180 --> 00:00:07,160 [Þetta er CS50. - CS50.TV] 4 00:00:07,160 --> 00:00:12,770 >> Efni dagsins er Unix skel. 5 00:00:12,770 --> 00:00:20,600 Ég er Douglas Kline, sérfræðingur, eða að minnsta kosti sæmilega bær notandi, úr skelinni. 6 00:00:20,600 --> 00:00:25,280 A skel er tengi fyrir notandann til að stýrikerfi tölva '. 7 00:00:25,280 --> 00:00:29,580 Nafnið er villandi eins ólíkt skel dýri, 8 00:00:29,580 --> 00:00:34,890 sem er erfitt og hlífðar, tölvuna skel leyfa fyrir samskipti. 9 00:00:34,890 --> 00:00:39,120 Svo porous himna myndi líklega vera betri samlíking. 10 00:00:39,120 --> 00:00:44,500 >> Upprunalega skel fyrir Unix er Bourne skel. 11 00:00:44,500 --> 00:00:46,450 Bourne er stafsett B-O-U-R-N-E. 12 00:00:46,450 --> 00:00:49,770 Bourne var einn af upprunalegu höfundum Unix, 13 00:00:49,770 --> 00:00:51,700 og svo skel er nefnd eftir honum. 14 00:00:51,700 --> 00:00:54,850 Nafn sem skel sem stjórn er bara einfaldlega SH. 15 00:00:54,850 --> 00:00:57,400 Það er stjórn sem þú getur keyrt. 16 00:00:57,400 --> 00:01:00,810 Skel hefst kl innskráningu. 17 00:01:00,810 --> 00:01:04,459 Þegar þú skráir þig inn á tölvuna, skel byrjar bara að keyra fyrir þig, 18 00:01:04,459 --> 00:01:06,820 og það er það sem tekur skipanir. 19 00:01:06,820 --> 00:01:09,790 Það getur byrjað á öðrum tímum líka. 20 00:01:09,790 --> 00:01:16,780 Ef þú koma upp gluggi með engum öðrum ábendingu, mun það byrja að skel fyrir þig. 21 00:01:16,780 --> 00:01:20,450 Það er hvernig það er að þú getur farið að glugga og byrjar að slá skipanir 22 00:01:20,450 --> 00:01:23,960 og svo framvegis þar jafnvel þó þú hafir ekki skráð þig inn á þeim glugga. 23 00:01:23,960 --> 00:01:26,670 Þar að auki, ef þú gera a fjarlægur tenging, 24 00:01:26,670 --> 00:01:30,250 þá mun það byrja skel á the fjarlægur tölva. 25 00:01:30,250 --> 00:01:44,310 Og það er hægt að keyra skipanir án gagnvirk skel. 26 00:01:44,310 --> 00:01:48,990 Það getur þýtt innan núverandi rekstri þínum, 27 00:01:48,990 --> 00:01:50,700 og það getur einnig þýtt á fjarstýringu. 28 00:01:50,700 --> 00:01:52,900 Þú gætir sent skipun til annar tölva, 29 00:01:52,900 --> 00:01:55,460 sem felur í byrjun upp a skel þar. 30 00:01:55,460 --> 00:01:57,760 Í raun hefur það að fela í sér að byrja upp á skel þar 31 00:01:57,760 --> 00:02:01,740 jafnvel ef það er ekki endanleg tilgangur þinn. 32 00:02:05,310 --> 00:02:12,350 Þegar eitthvað fer upp eins og þetta, er það ekki endilega að byrja nýja skel. 33 00:02:12,350 --> 00:02:17,430 Ef þú koma upp nýjan glugga, það er hægt að segja það að ala upp ritil 34 00:02:17,430 --> 00:02:18,940 eða einhver önnur stjórn. 35 00:02:18,940 --> 00:02:20,560 Í því tilfelli, ritstjóra mun byrja frá grunni. 36 00:02:20,560 --> 00:02:22,930 Þegar ritstjóri endar, glugga lýkur. 37 00:02:22,930 --> 00:02:24,620 Þetta er svolítið óvenjulegt en það er hægt að gera. 38 00:02:24,620 --> 00:02:27,140 Í þeim tilvikum, það mun ekki vera skel. 39 00:02:27,140 --> 00:02:31,890 Svo það er ekki endilega raunin að glugga eða einhver slík forrit mun koma upp skel. 40 00:02:31,890 --> 00:02:34,030 >> Shell flokka skipanir. 41 00:02:34,030 --> 00:02:40,900 Þáttun þýðir að skilgreina ýmsa þætti og flokka þær. 42 00:02:40,900 --> 00:02:43,470 Innan stjórn, heill strengur sem þú skrifar, 43 00:02:43,470 --> 00:02:47,310 það verða 1 eða fleiri stakir skipanir til að framkvæma. 44 00:02:47,310 --> 00:02:50,050 Aðrir þættir geta verið rök. 45 00:02:50,050 --> 00:02:55,020 Það getur líka verið sérstafir sem hafa áhrif á framkvæmd stjórn. 46 00:02:55,020 --> 00:02:59,710 Þeir geta sent framleiðsla annarsstaðar en á skjánum 47 00:02:59,710 --> 00:03:01,750 ef stjórn myndi venjulega senda það á skjáinn. 48 00:03:01,750 --> 00:03:04,390 Það getur endurvísa inntak, það getur gert aðra hluti líka. 49 00:03:04,390 --> 00:03:08,120 Það eru ýmsar aðrar tákn, stafir, og svo framvegis. 50 00:03:08,120 --> 00:03:13,600 Þáttun felst að greina og túlka þá hluti. 51 00:03:13,600 --> 00:03:19,560 >> Nú ef það eru ekki fleiri spurningar, sem er frekar líklegt þar sem það eru engin fleiri fólk, 52 00:03:19,560 --> 00:03:24,620 við munum fara á næstu síðu mína hér. 53 00:03:24,620 --> 00:03:29,170 >> Ég sagði áðan að Bourne skel er fyrsta skel. 54 00:03:29,170 --> 00:03:31,550 Það eru aðrir. 55 00:03:31,550 --> 00:03:34,520 Eitt er C-skel. Skipunin er frá CNet. 56 00:03:34,520 --> 00:03:36,830 Nafnið C-skel er bara að spila á orðum. 57 00:03:36,830 --> 00:03:41,260 Þetta skel var kynnt með Berkeley Unix í miðjum 1970. 58 00:03:41,260 --> 00:03:44,830 Berkeley Unix var seminal atburði í þróun Unix. 59 00:03:44,830 --> 00:03:48,770 Það var gríðarlegur bylting og með tilkomu þessa skel. 60 00:03:48,770 --> 00:03:50,790 Ástæðan fyrir því að spila á orðum, C-skel, 61 00:03:50,790 --> 00:03:56,490 er sú að C-skel hefur einhverja eiginleika í það sem líkjast C tungumál, 62 00:03:56,490 --> 00:03:59,740 þar sem Bourne skel hefur ekki - 63 00:03:59,740 --> 00:04:02,140 eða það hafði ekki á þeim tíma. 64 00:04:02,140 --> 00:04:05,190 Það er líka TC-skel. 65 00:04:05,190 --> 00:04:07,360 Þetta er superset af C-skel. 66 00:04:07,360 --> 00:04:11,470 Það hefur fleiri valkosti, margir sem eru gagnlegar fyrir gagnvirka notkun, 67 00:04:11,470 --> 00:04:16,050 svo sem að minnast skipanir í sögu kerfisins, 68 00:04:16,050 --> 00:04:18,459 sem ég mun lýsa nokkru síðar - 69 00:04:18,459 --> 00:04:23,120 á einfaldan hátt, byggð eftir ritstjóra. 70 00:04:23,120 --> 00:04:29,170 Það hefur einnig bókband sem gerir þér kleift að binda ýtt band til lengri stjórn. 71 00:04:29,170 --> 00:04:31,440 Við erum ekki að fara að fá inn að í dag. 72 00:04:31,440 --> 00:04:33,650 Það hefur einhverja eiginleika sem eru gagnlegar fyrir forritun. 73 00:04:33,650 --> 00:04:37,020 Hins vegar er C-skel er ekki oft notuð fyrir Shell forritun. 74 00:04:37,020 --> 00:04:39,080 Shell forrit, ef þú hefur ekki nú þegar vita, 75 00:04:39,080 --> 00:04:41,690 eru forrit sem samanstanda af skel einkenni. 76 00:04:41,690 --> 00:04:43,220 Þú getur keyrt þetta eins og forrit. 77 00:04:43,220 --> 00:04:46,760 Þú skrifar fullt af skeljarskipanir í skrá og keyrt skrána. 78 00:04:46,760 --> 00:04:49,760 Þú þarft ekki að þýða það. Þetta er túlkandi tungumál. 79 00:04:49,760 --> 00:04:57,320 Orðasambandið C-skel er nú óljós þar sem það gæti átt aðeins við upprunalega C-skel, CNet, 80 00:04:57,320 --> 00:05:01,200 eða öll C-skeljar, þ.mt tcsh. Það er svolítið óljós. 81 00:05:01,200 --> 00:05:08,250 >> A síðar skel er Korn skel, KSH, nefndur eftir forritari, Korn. 82 00:05:08,250 --> 00:05:14,160 Þessi skel reyndi að fella inn 1 skel 83 00:05:14,160 --> 00:05:16,960 kostir C-skel fyrir gagnvirka notkun 84 00:05:16,960 --> 00:05:19,230 og Bourne skel fyrir forritun. 85 00:05:19,230 --> 00:05:25,440 Það hefur verið notað sem gagnvirkt skel sumra manna - minnihluti. 86 00:05:25,440 --> 00:05:32,050 Seinna þó, það var annar kynning, Bash skel, bash, 87 00:05:32,050 --> 00:05:35,290 aftur að spila á orðum, Bourne-aftur skel. 88 00:05:35,290 --> 00:05:43,830 Það er framhald af Bourne skel. Korn skel er líka. Þau bæði eru. 89 00:05:43,830 --> 00:05:48,100 Það hefur sömu markmið Korn skel amalgamating C-skel er 90 00:05:48,100 --> 00:05:50,980 og kosti Bourne Shell í 1 skel. 91 00:05:50,980 --> 00:05:56,810 Margir af endurbætur á Korn skel eru einnig í Bash. 92 00:05:56,810 --> 00:06:00,710 Bash, hefur hins vegar meira og er því æskilegt. 93 00:06:00,710 --> 00:06:05,180 The Bourne-aftur skel og Korn skel eru kallaðir Bourne-gerð skeljar 94 00:06:05,180 --> 00:06:07,730 vegna þess að þeir eru einkenni The Bourne Shell er, 95 00:06:07,730 --> 00:06:11,180 sem eru ósamrýmanleg í sumu leyti með C-skeljar. 96 00:06:11,180 --> 00:06:15,520 There ert annar skeljar auk þeirra, sumir ætlað fyrir takmarkaða notkun, 97 00:06:15,520 --> 00:06:20,670 kannski takmarkað við sumum skipunum, kannski sérhæfð tilgangi, ekki oft notuð. 98 00:06:20,670 --> 00:06:24,240 >> Lagi. Næsta atriði hér. 99 00:06:31,300 --> 00:06:38,970 Bash skel hefur orðið í tengslum við ýmsa Linux. 100 00:06:38,970 --> 00:06:41,550 Ég er ekki viss um að ef það er satt af hverju formi. 101 00:06:41,550 --> 00:06:43,280 There ert margir eyðublöð þarna úti og ég hef ekki notað þá alla, 102 00:06:43,280 --> 00:06:46,870 en í þeim sem ég hef notað það hefur orðið í tengslum við það. 103 00:06:46,870 --> 00:06:49,670 Svo langt sem ég veit, það er ekkert um Bash 104 00:06:49,670 --> 00:06:52,210 sem gerir það eitthvað meira samhæft með Linux 105 00:06:52,210 --> 00:06:55,020 en nokkur annar blöndu af skel og stýrikerfi. 106 00:06:55,020 --> 00:06:59,690 Ég held að þetta sennilega bara endurspeglar hugrenningar af forriturum. 107 00:06:59,690 --> 00:07:07,500 Að það hefur orðið í tengslum við Linux er önnur ástæðan til að kjósa Bash til KSH 108 00:07:07,500 --> 00:07:11,820 síðan hlutirnir eru líklegri til að vera skrifuð í það og það er líklegt til að dreifa. 109 00:07:11,820 --> 00:07:15,410 Ég skal gefa þér aðrar ástæður fyrir því síðar. 110 00:07:15,410 --> 00:07:21,330 Bourne skel forskriftir skulu hlaupa undir Korn skel eða bash. 111 00:07:21,330 --> 00:07:22,650 Ef þú skrifar eitthvað fyrir Bourne skel, 112 00:07:22,650 --> 00:07:26,180 þú getur sennilega keyrt það undir ksh eða bash. 113 00:07:26,180 --> 00:07:30,610 Korn skel forskriftir mun sennilega hlaupa undir Bash, en ég get ekki ábyrgst það. 114 00:07:30,610 --> 00:07:36,040 Seinna hér, C-skel forskriftir skulu hlaupa undir TC-skel. 115 00:07:38,850 --> 00:07:41,690 C-skel var reyndar aldrei mikið notað til forskriftarþarfir 116 00:07:41,690 --> 00:07:48,110 þar sem Bourne skel og síðar The Bourne-gerð skeljar voru æskilegt í þeim tilgangi. 117 00:07:48,110 --> 00:07:50,620 Svo í raun er það ekki allt sem máli. 118 00:07:50,620 --> 00:07:53,480 Það eru alveg fullt af Bourne skel forskriftir sem ritað var fyrir löngu, 119 00:07:53,480 --> 00:07:56,860 áður en Korn skel eða The Bourne-aftur skel voru kynnt. 120 00:07:56,860 --> 00:07:59,300 Þeir eru enn í notkun, hluti af stýrikerfi, 121 00:07:59,300 --> 00:08:01,590 og svo þú munt finna þá ef þú lítur inn í stýrikerfi 122 00:08:01,590 --> 00:08:03,760 eða nokkur gömul pakka forritun. 123 00:08:03,760 --> 00:08:12,840 >> Bash er að nokkru leyti verða eins konar Lingua Franca fyrir stýrikerfum. 124 00:08:12,840 --> 00:08:17,580 Það er nú þegar verið framlengdur til Windows og VMS. 125 00:08:17,580 --> 00:08:20,440 VMS, ef þú veist ekki, er sér-stýrikerfi 126 00:08:20,440 --> 00:08:25,480 Digital Equipment Corporation, sem enn er í notkun, að mestu á bak við tjöldin. 127 00:08:25,480 --> 00:08:29,250 Og ef það er að fara að keyra á mismunandi stýrikerfum, 128 00:08:29,250 --> 00:08:31,110 líklegt að fólk hafa tilhneigingu til að skipta um það. 129 00:08:31,110 --> 00:08:33,840 En þessi þróun er tiltölulega nýleg. 130 00:08:33,840 --> 00:08:39,490 Það er rétt að byrja, þannig að ég get ekki sagt hvort þetta mun snúa út að virkilega að vera svona Lingua Franca. 131 00:08:39,490 --> 00:08:43,539 Einnig, vegna þess að skrá pathnames og bókasöfn mismunandi 132 00:08:43,539 --> 00:08:46,210 milli þessara mismunandi stýrikerfa, 133 00:08:46,210 --> 00:08:50,250 þú might ekki vera fær um að skrifa bash handrit á eitt stýrikerfi 134 00:08:50,250 --> 00:08:51,840 og þá hlaupa það á annað. 135 00:08:51,840 --> 00:08:54,440 Þú ættir að vera fær um að færa það á milli mismunandi Unix, Linux 136 00:08:54,440 --> 00:08:59,020 Mac OS stýrikerfi, en ekki endilega að Windows eða VMS. 137 00:08:59,020 --> 00:09:01,390 Þú gætir þurft að breyta skrá pathname lýsingar, 138 00:09:01,390 --> 00:09:03,180 og sumir bókasöfn gæti verið öðruvísi, 139 00:09:03,180 --> 00:09:05,230 sem getur haft áhrif á þann hátt að sumir skipanir vinna 140 00:09:05,230 --> 00:09:09,730 eða hvernig þeir vinna rök og þess háttar. 141 00:09:09,730 --> 00:09:19,230 Til viðbótar við þessi, annar varúð hér er að það er engin trygging 142 00:09:19,230 --> 00:09:23,570 að allar mismunandi skeljar sem ég hef nefnt - Bourne skel, C-skel, 143 00:09:23,570 --> 00:09:29,880 TC-skel, Korn skel, Bourne-aftur skel - verður aðgengilegt samkvæmt Unix 144 00:09:29,880 --> 00:09:33,750 eða Linux eða Mac OS tölvan. 145 00:09:33,750 --> 00:09:35,620 Þeir einfaldlega gæti ekki verið þar. 146 00:09:35,620 --> 00:09:38,300 Það er einn af varar hér. 147 00:09:38,300 --> 00:09:41,490 Það er óheppileg takmörkun hér þar sem þú vilt hlutina til að vinna alls staðar, 148 00:09:41,490 --> 00:09:44,380 en því miður er ekki hægt að treysta á það. 149 00:09:44,380 --> 00:09:47,230 >> Lagi. Næsta einn hér. 150 00:09:50,280 --> 00:09:54,370 Segjum að þú viljir skrifa skel handrit, 151 00:09:54,370 --> 00:09:57,170 A program samanstendur af skeljarskipanir. 152 00:09:57,170 --> 00:10:01,200 Þú skrifar skipanir þínar, setja þá í skrá, og keyrt skrána. 153 00:10:01,200 --> 00:10:04,230 Hvað ef þú vilt að fela rök? 154 00:10:04,230 --> 00:10:09,650 Þegar um er að ræða skel starfsemi, eru rök sem kallast færibreytur eða afstöðu breytur 155 00:10:09,650 --> 00:10:15,940 og þeir ætla að boða með dollaramerki og númeri, $ 1, 2 $. 156 00:10:15,940 --> 00:10:27,000 Þannig að ef handritið hefur þetta nafn, fyrsta rifrildi mitt skyldi rök 1 157 00:10:27,000 --> 00:10:30,540 og annað mitt skyldi rök 2, 158 00:10:30,540 --> 00:10:34,110 og inni handriti mínu ef ég vil vísa til þessa hluti - 159 00:10:34,110 --> 00:10:36,810 skulum eyða þessu þar sem ég er ekki alveg að fara að keyra hana - 160 00:10:36,810 --> 00:10:42,160 inni handriti mínu að ég gæti hafa $ 1 til að vísa til arg1, 161 00:10:42,160 --> 00:10:45,890 $ 2, sem mun koma út þannig, arg2. 162 00:10:45,890 --> 00:10:50,080 Svo þessir tákn eru í boði til að vísa til röksemda, 163 00:10:50,080 --> 00:10:52,390 og þeir eiga að öllum skeljar. 164 00:10:52,390 --> 00:10:56,520 Í samlagning, there ert annar stafir. 165 00:10:56,520 --> 00:11:01,700 $ * Vísar til alls rifrildi listanum, þeim öllum. 166 00:11:01,700 --> 00:11:05,390 $ # Vísar til fjölda rök. 167 00:11:05,390 --> 00:11:07,910 Aftur, þetta á við um allar skeljar. 168 00:11:07,910 --> 00:11:15,540 Þeir tákn, * og #, er hægt að nota með þeim merkingu í öðrum stöðum líka. 169 00:11:15,540 --> 00:11:17,940 Við munum ekki vera að fá inn í það. 170 00:11:17,940 --> 00:11:20,460 >> Shell specifier línu. Hvað er það fyrir? 171 00:11:20,460 --> 00:11:27,760 Segjum að þú hafir skrifað handrit og það er fyrir ákveðna skel og þú vilt að keyra það. 172 00:11:27,760 --> 00:11:33,500 Hvernig veistu hvað skel stýrikerfi verður að nota til að keyra handrit? 173 00:11:33,500 --> 00:11:37,230 Á einum tímapunkti sem þú gætir ráð fyrir að það myndi keyra það í Bourne skel 174 00:11:37,230 --> 00:11:39,440 ef þú did ekki segja annað, 175 00:11:39,440 --> 00:11:41,730 en fólk er ekki að skrifa handritin í Bourne skel sem mikið lengur 176 00:11:41,730 --> 00:11:43,750 og þú getur ekki einu sinni treyst á það lengur. 177 00:11:43,750 --> 00:11:48,740 Svo hér erum við með skel specifier línu hérna. 178 00:11:48,740 --> 00:11:52,450 Sem skilgreinir Bash. 179 00:11:52,450 --> 00:11:56,750 Athugaðu að það skilgreinir það í pathname, / bin / bash. 180 00:11:56,750 --> 00:12:02,870 Ef tölvan hefur bash skel en ekki í bin möppu, / bin, þetta mun ekki virka. 181 00:12:02,870 --> 00:12:06,870 Það er önnur undankeppni, annar varúð hér. 182 00:12:06,870 --> 00:12:09,500 The pund merki er athugasemd lína eðli. 183 00:12:09,500 --> 00:12:12,300 Það tekur til allra skeljar. 184 00:12:12,300 --> 00:12:18,610 Einkum raunin hér, #! í upphafi handrit, er sérstakt tilfelli. 185 00:12:18,610 --> 00:12:23,410 Sem skilgreinir skel til þess að keyra það. 186 00:12:23,410 --> 00:12:30,230 Eins og ég var að segja, gæti það ekki verið á sama stað / bin. 187 00:12:30,230 --> 00:12:34,880 Í samlagning, there er annar hlutur hér. 188 00:12:34,880 --> 00:12:41,250 Ef þú notar bara pund merki án upphrópunarmerki og pathname, 189 00:12:41,250 --> 00:12:44,640 sem ætti að benda til C-skel. 190 00:12:44,640 --> 00:12:48,300 Hins vegar, ég mæli með ekki að gera það vegna þess að ég er ekki fær um að tryggja 191 00:12:48,300 --> 00:12:49,750 að það verður alltaf að vinna. 192 00:12:49,750 --> 00:12:52,220 Ef þú vilt C-skel, það væri betra að segja það. 193 00:12:52,220 --> 00:12:58,450 Þá er það eitthvað frekar ruglingslegt hér. 194 00:12:58,450 --> 00:13:03,940 Ef þú notar skel specifier línu eins / bin / bash 195 00:13:03,940 --> 00:13:07,070 og að skel er ekki til þar, 196 00:13:07,070 --> 00:13:10,680 það er ekkert sem heitir / bin / bash á þeirri tölvu, 197 00:13:10,680 --> 00:13:14,330 annaðhvort vegna þess að það hefur ekki Bash eða vegna þess að það er á öðrum stað, 198 00:13:14,330 --> 00:13:17,450 þú munt fá villu að segja þér að handritið þú hleypur ekki til. 199 00:13:17,450 --> 00:13:21,510 Og auðvitað handritið til, svo að villuboð er ruglingslegt. 200 00:13:21,510 --> 00:13:24,810 Ástæðan sem stýrikerfið gefur þér að villa 201 00:13:24,810 --> 00:13:28,370 eða, réttara, að gagnvirk skel þína sem þú ert að keyra þetta gefur þessi villa, 202 00:13:28,370 --> 00:13:33,510 er að það skýrslur skipunina sem þú notaðir, sem er nafn á handriti. 203 00:13:33,510 --> 00:13:36,920 Að stjórn í raun kallað skel eftir nafni handriti. 204 00:13:36,920 --> 00:13:39,330 Það er þar sem þú færð þessi ruglingslegt villa skilaboð. 205 00:13:39,330 --> 00:13:42,980 Önnur leið til að hringja skel handrit 206 00:13:42,980 --> 00:13:45,910 er með því að skilgreina skel á stjórn lína, eins og hér. 207 00:13:45,910 --> 00:13:52,510 Þetta er skipun. Þetta segir hlaupa bash og þá hlaupa handriti mínu í Bash. 208 00:13:52,510 --> 00:13:55,680 Sem mun hafa forgang yfir specifier línu, 209 00:13:55,680 --> 00:14:02,090 og þetta hefur eiginleika sem gerir þér kleift að sjá fyrir mismunandi pathnames. 210 00:14:02,090 --> 00:14:04,840 Ef þú gefur bara skipun, the stýrikerfi mun líta fyrir þessi stjórn 211 00:14:04,840 --> 00:14:06,410 á ýmsum stöðum. 212 00:14:06,410 --> 00:14:08,820 Ef það er í boði, það ætti að finna það. 213 00:14:08,820 --> 00:14:12,290 The tölva vilja finna Bash hvar það er staðsett og keyra það, 214 00:14:12,290 --> 00:14:15,470 svo þú þarft ekki þá að hafa áhyggjur óður í hvar það finnur það. 215 00:14:15,470 --> 00:14:17,360 Það eru hugsanlega önnur áhyggjuefni hér, 216 00:14:17,360 --> 00:14:20,830 eins og ef það er meira en 1 útgáfa af Bash, sem er mögulegt en þó ólíklegt. 217 00:14:20,830 --> 00:14:23,540 Svo er það önnur leið til að takast á við þessa hluti. 218 00:14:23,540 --> 00:14:30,480 Specifier línur geta hringt í hvaða skel. 219 00:14:30,480 --> 00:14:34,480 Þeir geta líka hringt önnur en skeljar hluti. 220 00:14:34,480 --> 00:14:37,940 Dæmi sem ég hef hér eru sed, sem er læk ritstjóri; 221 00:14:37,940 --> 00:14:39,900 awk, sem er mynstur vinnslu tungumál; 222 00:14:39,900 --> 00:14:43,680 og Perl, mjög mjög þróuð forskriftarþarfir tungumál. 223 00:14:43,680 --> 00:14:47,570 Ef þú setur specifier línu gefur til kynna eitt af þessum verkefnum í upphafi, 224 00:14:47,570 --> 00:14:51,270 það mun fara beint inn í þessi forrit frekar en að byrja í skel. 225 00:14:51,270 --> 00:14:54,030 Þessir programs hafa takmörk getu þeirra. 226 00:14:54,030 --> 00:14:58,790 Perl er mjög hæfur. Sed er ritstjóri. Það getur gert hluti út því einfaldlega að breyta. 227 00:14:58,790 --> 00:15:03,300 En það getur verið erfitt að forrita það. 228 00:15:03,300 --> 00:15:09,670 Auk þess, sem liggur í rök og dót til að handriti er annaðhvort ómögulegt eða ruglingslegt. 229 00:15:09,670 --> 00:15:15,030 Svo í þeim tilvikum, með AWK eða sed, er það, að minnsta kosti í minni reynslu, 230 00:15:15,030 --> 00:15:18,910 æskilegt að skrifa skel handrit og kalla awk eða sed úr skel handrit 231 00:15:18,910 --> 00:15:24,660 frekar en að hringja awk eða sed sem handritið specifier línu. 232 00:15:24,660 --> 00:15:26,980 Perl er mjög fjölbreytt tungumál, eins og ég sagði. 233 00:15:26,980 --> 00:15:30,050 Þú getur ekki keyrt gagnvirka skipanir í perl, 234 00:15:30,050 --> 00:15:32,660 sem þýðir að þú getur ekki próf hluta forskriftir sem þú ert að þróa 235 00:15:32,660 --> 00:15:33,970 því að keyra þá gagnvirkt. 236 00:15:33,970 --> 00:15:36,160 Hins vegar er það afar hæfur tungumál 237 00:15:36,160 --> 00:15:40,960 og hefur þróast í mjög mikið notaður. 238 00:15:40,960 --> 00:15:45,720 Það er bara lítill hluti af parenthetical athugasemd um að specifier línum. 239 00:15:45,720 --> 00:15:50,610 >> Í öllum eða flestum formum af Linux - aftur, ég get ekki verið viss það er allt - 240 00:15:50,610 --> 00:15:57,900 og í Mac OS, ef þú slærð CNet þú færð tcsh, 241 00:15:57,900 --> 00:16:00,570 og ef þú skrifar SH þú færð bash. 242 00:16:00,570 --> 00:16:05,020 Þeir voru að reyna þar til að gefa þér fleiri háþróaður útgáfa af þessum skeljar, 243 00:16:05,020 --> 00:16:07,940 en það getur verið ruglingslegt. 244 00:16:07,940 --> 00:16:16,720 Ef þú skrifar handrit með tcsh eða Bash lögun á meðan að hringja CNet eða SH 245 00:16:16,720 --> 00:16:22,230 og þá reyna að keyra það á tölvu sem er ekki með tcsh eða bash, 246 00:16:22,230 --> 00:16:25,050 þú gætir fengið nokkrar villur ef það eru skipanir í það 247 00:16:25,050 --> 00:16:27,970 sem þeir skeljar kannast ekki. 248 00:16:27,970 --> 00:16:34,120 Að auki getur þú hefur kallað upp skel á þinni tölvu 249 00:16:34,120 --> 00:16:37,700 kalla það sem SH eða CNet og þá fá fleiri háþróaður skeljar. 250 00:16:37,700 --> 00:16:41,440 Þú getur ekki einu sinni hugsa um þá staðreynd að þú ert að nota fleiri háþróaður skel. 251 00:16:41,440 --> 00:16:45,670 Þannig að þetta er möguleiki pitfall. 252 00:16:45,670 --> 00:16:50,290 Hvernig er það þekkt að ef þú skrifar SH þú færð Bash, 253 00:16:50,290 --> 00:16:55,580 ef þú skrifar CNet þú færð tsch? 254 00:16:55,580 --> 00:16:59,940 Það eru hlutir í þessum tölvum kallast tenglar 255 00:16:59,940 --> 00:17:06,460 sem getur tengst að skrá nöfn að vísa til sama. 256 00:17:06,460 --> 00:17:12,180 Það getur annað hvort að vera 2 nöfn fyrir sömu skrá eða skrá sem Tilgangurinn er að vísa í aðra skrá. 257 00:17:12,180 --> 00:17:17,550 Þeir eru kallaðir harður og táknræn tengsl. Við munum ekki vera að fara inn í það aftur í dag. 258 00:17:17,550 --> 00:17:21,619 Það kann einnig að vera aðskilin skrár - 1 skrá SH, 1 skrá Bash - 259 00:17:21,619 --> 00:17:23,880 en þeir báðir keyra bash. 260 00:17:23,880 --> 00:17:29,350 Þá er það annar undankeppni hér. 261 00:17:29,350 --> 00:17:42,640 Ef þú ert að hringja eitt af þessum skeljum af öðru nafni, 262 00:17:42,640 --> 00:17:46,640 þú gætir held að þú vilt fá sömu virkni og að kalla það öðru nafni. 263 00:17:46,640 --> 00:17:49,700 Jæja, sem í raun er ekki endilega satt. 264 00:17:49,700 --> 00:17:55,020 Þessar skipanir geta skoða nafn sem þeir voru kallaðir 265 00:17:55,020 --> 00:18:00,020 og þeir geta, á grundvelli þeirrar nafn, haga sér á annan hátt. 266 00:18:00,020 --> 00:18:02,740 Það kann að vera vandamál af því að reyna að vera í samræmi við staðal. 267 00:18:02,740 --> 00:18:06,060 Sumir af þú mega hafa heyrt um POSIX staðlinum eða öðru, 268 00:18:06,060 --> 00:18:08,730 kannski aðra eiginleika. 269 00:18:08,730 --> 00:18:14,520 Þetta er hægt að velja stundum með stjórn lína rifrildi 270 00:18:14,520 --> 00:18:17,310 eða með því að setja skel breytur. 271 00:18:17,310 --> 00:18:22,170 Kalla það sem SH eða bash getur raunverulega leitt til mismunandi framkvæmd 272 00:18:22,170 --> 00:18:25,300 jafnvel ef það er sama skráin sem þú ert að framkvæma. 273 00:18:25,300 --> 00:18:31,800 Annar hlutur til íhuga er að jafnvel ef annar tölva hefur tcsh eða Bash, 274 00:18:31,800 --> 00:18:35,310 ef þeir eru ekki tengd eins og þeir eru á þinni tölvu 275 00:18:35,310 --> 00:18:37,990 ef þú ert með Linux eða Mac OS heimamaður tölva, 276 00:18:37,990 --> 00:18:45,630 þá aftur þú munt fá skel sem þú kallar SH eða CNet, ekki sá sem þú might vilja. 277 00:18:50,430 --> 00:19:01,130 Núverandi Bourne skelin aukahluti minni en í Bash 278 00:19:01,130 --> 00:19:06,100 en framhjá þeim í upprunalegu Bourne skel. 279 00:19:06,100 --> 00:19:09,690 Sem afleiðing af því að, jafnvel núverandi Bourne skel, SH, 280 00:19:09,690 --> 00:19:14,560 jafnvel þegar það er ekki bash, líkist C tungumál meira en C-skel gerir. 281 00:19:14,560 --> 00:19:20,460 Það var ekki satt þegar C-skel var fyrst búið til, en það hefur þróast þannig. 282 00:19:20,460 --> 00:19:26,560 Þú gætir tekið eftir hér að öll þessi skel nöfn nema fyrir Bourne skel 283 00:19:26,560 --> 00:19:30,640 hafa eitthvað til kynna hvaða skel sem þeir eru - CNet, Bash - 284 00:19:30,640 --> 00:19:32,550 en Bourne skel er bara SH. 285 00:19:32,550 --> 00:19:34,910 Hvers vegna? Það var upprunalega skel. 286 00:19:34,910 --> 00:19:37,770 Það var skel þá, ekki í skel, 287 00:19:37,770 --> 00:19:41,090 og þar sem það var skel, það var engin ástæða til að aðgreina það frá öðru skel. 288 00:19:41,090 --> 00:19:45,030 Svo er það hvers vegna það hefur að nafn og gerir enn. 289 00:19:50,630 --> 00:19:58,990 >> Þessi toppur hér er lína úr lykilorð gagnagrunninum fyrir reikning sem ég hef þar 290 00:19:58,990 --> 00:20:01,680 á annarri tölvu. 291 00:20:01,680 --> 00:20:08,300 Ég ætla að reyna að fá það nafn svo þú getur séð að hluta í lok, skel. 292 00:20:09,720 --> 00:20:15,450 Lykilorðið gagnasafn heldur tenging eiginleikum fyrir alla notendur. 293 00:20:15,450 --> 00:20:20,330 Í upphafi er username, sem þú getur séð síðustu 2 stafina minn núna. 294 00:20:20,330 --> 00:20:23,970 Reitina hér eru aðskilin með ristill. 295 00:20:23,970 --> 00:20:28,210 Síðasta sviði, eins og þú sérð, er bin / tcsh, skel. 296 00:20:28,210 --> 00:20:30,230 Það er skel specifier. 297 00:20:30,230 --> 00:20:33,240 Það er eitthvað áhugavert hér. 298 00:20:33,240 --> 00:20:36,950 Þegar Unix var fyrst þróað, það var aðeins 1 skel, 299 00:20:36,950 --> 00:20:38,350 þannig að það var ekkert val þar. 300 00:20:38,350 --> 00:20:45,570 Svo hvers vegna did þeir leyfa sviði í lykilorð gagnagrunninum til að tilgreina skel? 301 00:20:45,570 --> 00:20:47,920 Ég veit ekki, en það er heppinn að þeir gerðu. 302 00:20:47,920 --> 00:20:52,030 Það er frekar erfitt að gera breytingar á gagnagrunninum lykilorð sniði 303 00:20:52,030 --> 00:20:54,420 því margir programs vísa til snið 304 00:20:54,420 --> 00:20:57,720 og þyrfti að endurskrifa. 305 00:20:57,720 --> 00:21:04,130 Það er felicitous eða fortuitous þróun sem þeir með akur þann. 306 00:21:04,130 --> 00:21:12,780 Þannig að lykilorð skrá lína er notuð á öllum Unix og Linux tölvum svo langt sem ég veit. 307 00:21:12,780 --> 00:21:14,650 The Mac hefur eigin kerfi sitt. 308 00:21:14,650 --> 00:21:17,810 Það hefur reyndar lykilorð skrá með línurnar í því formi, 309 00:21:17,810 --> 00:21:21,060 en það er ekki þar sem notandinn einkenni eru skilgreind. 310 00:21:21,060 --> 00:21:24,200 Annar parenthetical athugasemd þar. 311 00:21:36,470 --> 00:21:46,020 >> Ef þú ert að hringja í skel, hægt að kalla það sem undir-skel af núverandi skeljar þínum. 312 00:21:46,020 --> 00:21:50,480 Þannig að ef ég fer hér, við skulum fá losa af þessum hlutum. 313 00:21:50,480 --> 00:21:53,350 Hér er ég í C-skel. 314 00:21:56,830 --> 00:22:01,200 Sem breytu, sem nákvæmlega greinir í skel mína, 315 00:22:01,200 --> 00:22:04,300 reyndar er ekki alltaf áreiðanleg leið til að ákvarða hvað skel þú ert að keyra, 316 00:22:04,300 --> 00:22:06,220 en í þessu tilviki sem það er. 317 00:22:06,220 --> 00:22:08,040 Hvað ef ég gerð bara - 318 00:22:09,970 --> 00:22:12,470 Nú er ég í Bash. 319 00:22:12,470 --> 00:22:19,540 Sumir hlutir eru að fara til vera the sami. LS segir mér boðorð mín. 320 00:22:19,540 --> 00:22:24,500 Ef ég er fresta heim til mín C-skel, LS, sama. Satt? 321 00:22:24,500 --> 00:22:28,890 fg, forgrunnur, aftur til að bash skel mína. 322 00:22:28,890 --> 00:22:38,290 pwd, núverandi skrá, aftur til C-skel. 323 00:22:38,290 --> 00:22:43,180 pwd, ólíkur skrá - í raun ekki a ólíkur skrá í þessu tilfelli. 324 00:22:43,180 --> 00:22:45,110 Það er í sömu möppu. 325 00:22:45,110 --> 00:22:50,000 Segjum að ég vil kalla skipun hér: Hvar Er. 326 00:22:50,000 --> 00:22:52,140 Hvað þýðir það að gera? 327 00:22:52,140 --> 00:22:53,670 Það segir mér hvar LS stjórn, 328 00:22:53,670 --> 00:22:56,670 sá sem gefur mér skrá skráningu, er staðsett í LS. 329 00:22:56,670 --> 00:23:01,460 Förum aftur til að bash skel. Skulum reyna það sama. 330 00:23:01,460 --> 00:23:05,830 Hmm, áhugavert þarna, þar sem: stjórn fannst ekki. 331 00:23:05,830 --> 00:23:07,400 Hvers vegna er það? 332 00:23:07,400 --> 00:23:11,570 HVAR stjórn er byggt á C-skel. 333 00:23:11,570 --> 00:23:15,630 Þetta er ekki stjórn sem þarf að lesa í að minni frá einhvers staðar annars og framkvæma. 334 00:23:15,630 --> 00:23:20,310 C-skel rekur það með því að flytja framkvæmd að hluta eigin númer þess 335 00:23:20,310 --> 00:23:22,790 og það er ekki í Bash skel. 336 00:23:22,790 --> 00:23:25,710 Svo Bash, ekki hafa svona innbyggt í stjórn, lítur út fyrir það, er ekki að finna það, 337 00:23:25,710 --> 00:23:27,720 og við færð villu. 338 00:23:27,720 --> 00:23:32,290 Svo þar höfum við bash skel keyra undir C-skel, og við köllum að undir-skel. 339 00:23:32,290 --> 00:23:38,480 Og réttlátur í tilfelli þú ert forvitinn, bash skel hefur sinn hátt til að finna skipanir. 340 00:23:38,480 --> 00:23:42,590 tætt er átt við þá staðreynd að það er hægt að framkvæma hraðar, 341 00:23:42,590 --> 00:23:44,960 að stofna hraðar. 342 00:23:44,960 --> 00:23:48,610 Það er einn af the aukahluti byggð á sumum þessara skeljar. 343 00:23:50,220 --> 00:23:54,200 >> Bourne-gerð skeljar eru valinn fyrir forritun. 344 00:23:54,200 --> 00:23:57,300 Þeir hafa mannvirki stjórn eins lykkjur, skilyrt yfirlýsingar, 345 00:23:57,300 --> 00:24:00,240 tegund af skipunum sem þú gætir notað í forritunarmál eins og C 346 00:24:00,240 --> 00:24:04,190 eða hvað tungumál. Kannski þú ert að forritun í Java eða hvað. 347 00:24:04,190 --> 00:24:06,460 Skeljar höfum þá líka. 348 00:24:06,460 --> 00:24:11,790 The Bourne-gerð skeljar, sérstaklega Bash, hafa meira 349 00:24:11,790 --> 00:24:15,730 og þeir eru hannaðir með meiri sveigjanleika. 350 00:24:15,730 --> 00:24:20,700 Bash skel hefur fylki. Upprunalega Bourne skelin gerir það ekki. 351 00:24:20,700 --> 00:24:26,130 Svo hægt verði töluvert hagstæður fyrir forritun. 352 00:24:26,130 --> 00:24:29,810 C-skel raunverulega hjartarskinn hafa fylki en ekki hafa a einhver fjöldi af þessum aðgerðum. 353 00:24:29,810 --> 00:24:33,450 The Bourne-gerð skeljar mun framkvæma hraðar 354 00:24:33,450 --> 00:24:36,520 ef þeir hafa ekki eiginleika ætlaðar fyrir gagnvirka notkun. 355 00:24:36,520 --> 00:24:39,340 Þú hleður það niður fyrir einn tilgang, þetta hleður þeim niður fyrir annan tilgang. 356 00:24:39,340 --> 00:24:41,520 Það er að málamiðlun þar. 357 00:24:41,520 --> 00:24:44,510 Þessir eiginleikar sem eru ætlaðir fyrir gagnvirka notkun 358 00:24:44,510 --> 00:24:46,920 eru í raun lítið eða ekkert fyrir forskriftarþarfir. 359 00:24:46,920 --> 00:24:52,160 Það er hægt að nota gagnvirkan undir-skel alveg eins og sá sem ég byrjaði þar 360 00:24:52,160 --> 00:24:57,780 að prófa skipanir sem þú ætlar að nota í handriti. 361 00:24:57,780 --> 00:25:01,180 Það er það sem þú getur ekki gert með perl. Þú getur gert það með skeljar. 362 00:25:01,180 --> 00:25:04,850 Jafnvel mannvirki eins fyrir lykkjur og svo framvegis hægt að keyra gagnvirkt. 363 00:25:04,850 --> 00:25:07,000 Þeir eru stundum gagnlegt að hlaupa gagnvirkt, 364 00:25:07,000 --> 00:25:10,180 en líklegra að þú ert að nota þá til að þróa handrit. 365 00:25:15,690 --> 00:25:17,400 >> Samheiti. 366 00:25:17,400 --> 00:25:21,630 Þetta er að fara til að vera um C-skel. 367 00:25:23,270 --> 00:25:27,570 Saga vélbúnaður þar sem þú færð til baka til fyrri skipanir 368 00:25:27,570 --> 00:25:30,340 eða hlutar af þeim sem þú hefur keyrt nú þegar. 369 00:25:30,340 --> 00:25:33,680 Aftur, um C-skel, sem Bourne skel og Korn skel hafa þetta, 370 00:25:33,680 --> 00:25:35,620 en ég ætla ekki að fara að fá inn í þá. 371 00:25:35,620 --> 00:25:40,340 Svo hér eru nokkrar gagnlegar samheiti sem ég hef. 372 00:25:43,100 --> 00:25:44,880 Í stað þess að ls - það er algengt stjórn - 373 00:25:44,880 --> 00:25:47,620 réttlátur tegund l og sparað þér 1 staf. 374 00:25:47,620 --> 00:25:50,600 LS með ýmsum möguleikum, öllum þeim vinna. 375 00:25:50,600 --> 00:25:54,460 Athugið að þeir skilgreiningar gæsalappa. 376 00:25:54,460 --> 00:25:57,520 Í þessum tilvikum eru tilvitnanir ekki nauðsynlegt. 377 00:25:57,520 --> 00:26:00,100 Ef þú getur skilgreint þau samheiti án gæsalappa, það vildi samt vinna. 378 00:26:00,100 --> 00:26:02,910 Þeir eru mælt. 379 00:26:02,910 --> 00:26:04,900 Það eru aðstæður þar sem þú getur ekki notað tilvitnun 380 00:26:04,900 --> 00:26:08,050 vegna þess að þú vilt eitthvað að gerast, sem vitna myndi koma í veg. 381 00:26:08,050 --> 00:26:11,210 Stundum er hægt að vitna í hluta af skilgreiningu en ekki minna en það. 382 00:26:11,210 --> 00:26:17,010 Það er einnig almennt mælt með að nota einn quotes frekar en gæsalappa. 383 00:26:17,010 --> 00:26:19,750 Gæsalappa hafa áhrif á breytilegum skilgreiningum, 384 00:26:19,750 --> 00:26:22,950 einkum veldur þeim að vera metin frekar en að stöðva það. 385 00:26:22,950 --> 00:26:25,910 Hvers vegna vildi að við viljum stöðva mat? 386 00:26:25,910 --> 00:26:28,710 Og hvernig vitna gera það fyrir okkur? 387 00:26:28,710 --> 00:26:32,600 >> Hér er stjórn sem þú gætir fundið áhugavert. 388 00:26:32,600 --> 00:26:35,470 'LS g *' 389 00:26:35,470 --> 00:26:37,640 g *, eins og þú veist líklega, er algildisstaf tjáning 390 00:26:37,640 --> 00:26:40,290 fyrir alla skrá nöfn sem byrja á g. 391 00:26:40,290 --> 00:26:46,410 Ef ég skrifa bara í stjórn LS g *, ég fá lista yfir öll þessi nöfn í núverandi möppu mína. 392 00:26:46,410 --> 00:26:50,870 Ef ég skilgreina sem samheiti eins og það er hér með gæsalöppum, 393 00:26:50,870 --> 00:26:56,990 það mun hlaupa þessi stjórn í núverandi möppu þar sem þú ert að keyra það. 394 00:26:56,990 --> 00:27:01,250 En ef þú keyrir alias skilgreiningu án gæsalappa, 395 00:27:01,250 --> 00:27:09,620 það mun meta algildisstaf g * þegar það rennur þetta skilgreina stjórn. 396 00:27:09,620 --> 00:27:14,400 Svo skilgreiningu á alias verður LS fylgt eftir lista yfir skrár í möppu 397 00:27:14,400 --> 00:27:16,310 þar sem samheiti skipun er keyrð, 398 00:27:16,310 --> 00:27:19,180 óháð því hvar þú ætlar í raun að keyra skipunina. 399 00:27:19,180 --> 00:27:26,360 Þetta er ekki mikið notað, og einn vitna í veg fyrir mat á stjörnu. 400 00:27:26,360 --> 00:27:30,780 Þannig að þú færð bara skilgreiningu vera LS g *. 401 00:27:30,780 --> 00:27:35,510 Svo þegar þú keyrir dulnefni LGS, setur það þá út. 402 00:27:35,510 --> 00:27:40,490 Nú eru engar tilvitnanir, og það mun meta stjörnu þegar þú keyrir alias stjórn. 403 00:27:40,490 --> 00:27:43,900 Svo er það eitt. 404 00:27:43,900 --> 00:27:46,590 Gæsalappa myndi hafa þessi sömu áhrif hér, 405 00:27:46,590 --> 00:27:50,580 en það eru önnur mál sem gæsalappa myndi ekki virka svo vel. 406 00:27:50,580 --> 00:27:52,450 >> Hér er annað. 407 00:27:52,450 --> 00:27:54,270 Þú gætir vita grep skipunina. 408 00:27:54,270 --> 00:28:02,110 The grep skipunina er hægt að nota til að skanna skrá fyrir línur sem hafa ákveðna strengi. 409 00:28:02,110 --> 00:28:10,350 Svo skulum við fara yfir hér og ég ætla að loka frá Bourne skel mína. 410 00:28:23,570 --> 00:28:25,450 Allt í lagi. Hér er skrá. 411 00:28:25,450 --> 00:28:31,490 Skulum segja að það er grep ABC strengi. Það er það. 412 00:28:31,490 --> 00:28:37,930 Ef ég grep zddd, fæ ég ekkert. Allt í lagi. 413 00:28:37,930 --> 00:28:40,960 Svo það finnur band, það skýrslur, það er ekki að finna, það er ekki frá því. 414 00:28:40,960 --> 00:28:44,930 Það framleiðsla hvaða línu sem hefur að strengur á það. 415 00:28:44,930 --> 00:28:49,080 Það eru alls konar möguleikar hér, sem þú getur fundið í skjölum. 416 00:28:49,080 --> 00:28:52,160 Hér er ein leið til að gera það. 417 00:28:52,160 --> 00:29:03,290 Hvað um þetta einn, alias grabc 'grep abc'? 418 00:29:03,290 --> 00:29:09,000 Það er að fara að fela 1 rök þegar alias er skilgreint. 419 00:29:09,000 --> 00:29:26,300 Þannig að ef ég geri það hér, nú ef ég grabc, 420 00:29:26,300 --> 00:29:30,620 nú alias inniheldur meira en einföldum stjórn. Það hefur einnig þau rök. 421 00:29:30,620 --> 00:29:32,190 Svo langt sem virkar. 422 00:29:32,190 --> 00:29:38,590 Ég hef aðra stjórn hér, þetta einn, þannig að þeir eru mismunandi strengir í það 423 00:29:38,590 --> 00:29:46,790 og sýna að þetta er ekki að finna neitt þar þar sem það passar ekki. 424 00:29:46,790 --> 00:29:56,180 >> Hvað ef ég vil fela í alias skilgreiningu skrána sem ég ætla að leita 425 00:29:56,180 --> 00:30:02,970 og ég vil gefa sem rök alias strenginn sem ég er að leita að? 426 00:30:02,970 --> 00:30:08,040 Ég gæti langað til að segja abc sem rök til alias mitt, 427 00:30:08,040 --> 00:30:10,870 en alias þegar ákveðið skrána. 428 00:30:10,870 --> 00:30:15,710 Og það er þar sem þessi mál koma inn 429 00:30:20,430 --> 00:30:25,270 Tilkynning hér höfum grep eins og áður. 430 00:30:25,270 --> 00:30:28,130 Við höfum á skrá hér, strengi. 431 00:30:28,130 --> 00:30:35,610 \ ^, Eins konar undarleg tjáning, hygg ég, ef þú hefur ekki séð þetta áður. 432 00:30:35,610 --> 00:30:39,920 Upphrópunarmerki er hluti af sögu C-skel vélbúnaður. 433 00:30:39,920 --> 00:30:45,220 Það getur muna fyrri skipanir, getur það muna rök að þeim skipunum og svo framvegis. 434 00:30:46,760 --> 00:31:01,570 Saga vélbúnaður er notaður sem hluti af aliasing. 435 00:31:01,570 --> 00:31:07,390 Ef þú tilgreinir línu eftir upphrópunarmerki, það mun vísa til þess línu í sögu listanum, 436 00:31:07,390 --> 00:31:11,910 sem við munum ekki vera að fá inn núna þar sem það er allt annar umræða. 437 00:31:11,910 --> 00:31:16,280 Það er hægt að tilgreina hluti af línu. 438 00:31:16,280 --> 00:31:22,950 Svo 03:02! Myndi vera annað rök stjórn númer 3. 439 00:31:22,950 --> 00:31:30,430 The Caret hér í þessari tjáningu stendur fyrir fyrstu rök. 440 00:31:30,430 --> 00:31:34,410 Ef þú gefur það ekki vísbendingu um hvaða legg þú ert að vísa til, 441 00:31:34,410 --> 00:31:37,300 það er átt við strax fyrri stjórn, 442 00:31:37,300 --> 00:31:41,990 og Caret er tákn fyrir fyrstu rök. 443 00:31:41,990 --> 00:31:46,820 Því það er Caret og ekki tala, þú þarft ekki að nota í ristli, 444 00:31:46,820 --> 00:31:52,660 svo ^ þýðir fyrsta rifrildi við fyrri stjórn!. 445 00:31:52,660 --> 00:31:55,020 Smá ruglað hérna. 446 00:31:55,020 --> 00:31:58,450 Í þessu tilfelli, þegar þú notar þetta sem samnefni skilgreiningu, 447 00:31:58,450 --> 00:32:04,650 saga tilvísun vísar aftur á skipununum sem alias er notuð. 448 00:32:04,650 --> 00:32:08,470 Þannig að þetta er að fara aftur 1 stjórn sem saga rekstri, 449 00:32:08,470 --> 00:32:11,810 en sem samnefni aðgerð sem hún vísar til skipuninni sem þú vilt slá, 450 00:32:11,810 --> 00:32:14,780 segja, grstrings_file. 451 00:32:17,440 --> 00:32:20,240 Við höfum að vitna hér í það. Hvað er sviga fyrir? 452 00:32:20,240 --> 00:32:30,810 Í þessu tilviki, eins og annars staðar, gera við viljum ekki að framkvæma sögu vélbúnaður 453 00:32:30,810 --> 00:32:33,680 á meðan að skilgreina alias. 454 00:32:33,680 --> 00:32:37,900 Ef við ekki hafa sviga þarna, skel myndi draga í fyrstu rök 455 00:32:37,900 --> 00:32:41,870 af stjórn rétt áður en það hljóp þetta alias stjórn, sem við viljum ekki. 456 00:32:41,870 --> 00:32:47,520 Við viljum þetta að vera byggð inn á alias stjórn til að hringja í rifrildi síðar. 457 00:32:47,520 --> 00:32:53,550 Einn quotes gera flýja ekki upphrópunarmerki, sögu tilvísun. 458 00:32:53,550 --> 00:32:57,450 Kannski vita tjáningu flýja þýðir að breyta merkingu eitthvað. 459 00:32:57,450 --> 00:33:00,260 Í þessu tilviki, þýðir það að hætta að eitthvað af því að hafa sérstaka merkingu. 460 00:33:00,260 --> 00:33:03,030 Sérstaka þýðingu upphrópunarmerki er saga. 461 00:33:03,030 --> 00:33:05,790 Flýja og það virkar ekki að merkingu. 462 00:33:05,790 --> 00:33:08,080 Vitna gera það ekki, sviga gerir. 463 00:33:08,080 --> 00:33:11,900 Þannig að við erum í raun að nota 2 stigum sleppi hér. 464 00:33:23,500 --> 00:33:29,620 Ég ætla að færa þetta skipun í öðrum glugga án þess að slá það 465 00:33:29,620 --> 00:33:35,210 með því að nota þessar klippingu aðgerðir sem þú getur fundið gagnleg. 466 00:33:40,620 --> 00:33:42,460 Eitthvað annað hér sem ég skal sýna þér. 467 00:33:42,460 --> 00:33:46,730 Ef þú skrifar bara alias án rök, segir það þér allar röksemdir. 468 00:33:46,730 --> 00:33:48,640 Þetta er fullt af nöfnum sem ég hafði þegar hér 469 00:33:48,640 --> 00:33:53,400 auk þeirra sem ég hef verið að nota hér í dag. 470 00:33:53,400 --> 00:34:00,220 En ef ég gerð bara með nafni samnefni, segir það mér hvað það þýðir. 471 00:34:00,220 --> 00:34:03,390 Takið eftir að tilvitnanir eru farin og sviga er farinn. 472 00:34:03,390 --> 00:34:08,620 Þessi strengur hér er afleiðing þeirrar alias skilgreiningu, 473 00:34:08,620 --> 00:34:12,199 og nú hefur það bara! ^ í það. 474 00:34:12,199 --> 00:34:19,150 Þetta er að fara að líta í skránni strengi fyrir neitt. 475 00:34:19,150 --> 00:34:34,900 Svo ef ég grstrings_file strengi, gerði ég ekki gefa það neitt að leita þar, 476 00:34:34,900 --> 00:34:37,429 en það er útlit í strengi. 477 00:34:37,429 --> 00:34:42,330 Það var ekki að finna orð strengi í skrá strengi, en það er að finna abc. 478 00:34:42,330 --> 00:34:46,770 Og það er ekki að finna það. 479 00:34:46,770 --> 00:34:52,330 Svo hér erum við að gefa rök sem smellir inn í skilgreiningu á alias, 480 00:34:52,330 --> 00:34:55,530 sem er sett inn í það. 481 00:34:55,530 --> 00:34:58,540 Það er þar sem þessi mál koma frá. 482 00:34:58,540 --> 00:35:00,240 Þú getur notað fleiri en 1. 483 00:35:00,240 --> 00:35:03,170 The Caret er tákn fyrir fyrstu rök. 484 00:35:03,170 --> 00:35:07,510 Ef þú vildir nota annað rifrildi, myndir þú þá segja: 2. 485 00:35:07,510 --> 00:35:11,250 Það er engin sérstök tákn fyrir seinni rök. 486 00:35:11,250 --> 00:35:14,790 Og vegna þess að þú ert að nota tala, vildi að þú þarft að nota ristill. 487 00:35:14,790 --> 00:35:17,220 Það er hins vegar, annar kostur hér. 488 00:35:17,220 --> 00:35:21,220 The dollaramerki stendur fyrir síðustu rök. 489 00:35:21,220 --> 00:35:23,320 Og vegna þess að þetta er tákn, getur þú sleppt í ristli. 490 00:35:23,320 --> 00:35:25,870 Þannig að það væri síðasta rifrildi í listanum. 491 00:35:25,870 --> 00:35:27,900 Og það er líka þessi. 492 00:35:27,900 --> 00:35:31,380 Stjarnan þýðir allir, þannig að þetta er heill rök lista, 493 00:35:31,380 --> 00:35:35,150 og aftur, getur þú sleppt í ristli því það er ekki tala. 494 00:35:36,970 --> 00:35:39,950 Ég vona að þú ert allur að fylgjast allt þetta. 495 00:35:39,950 --> 00:35:54,100 >> Saga vélbúnaður geta farið aftur til fyrri línur í sögu listanum. 496 00:35:54,100 --> 00:36:01,370 Þú getur gert þetta í alias skilgreiningu. 497 00:36:01,370 --> 00:36:02,950 Ég hef aldrei séð þetta gert. 498 00:36:02,950 --> 00:36:05,840 Það myndi hafa þau áhrif að draga úr fyrri skipanir úr sögulistanum 499 00:36:05,840 --> 00:36:08,130 þegar þú framkvæma alias, sem gæti verið mismunandi skipanir 500 00:36:08,130 --> 00:36:11,240 eftir því hvenær og hvar sem þú framkvæma það. 501 00:36:11,240 --> 00:36:14,020 Hugsanlega gætir þú vilt að draga út slíka tilvísun 502 00:36:14,020 --> 00:36:15,900 bara að vita hvað á gengur eldri stjórn var. 503 00:36:15,900 --> 00:36:17,280 Ég hef aldrei séð þetta gerast. 504 00:36:17,280 --> 00:36:19,970 Ég geri ráð fyrir að einhver gæti langað til, en þetta er mjög ólíklegt. 505 00:36:19,970 --> 00:36:26,480 Það er annar hlutur hér. 506 00:36:26,480 --> 00:36:33,060 Ef þú notar þessi saga-gerð tilvísun, 507 00:36:33,060 --> 00:36:38,190 þá aðeins rök sem það er svo tilvísun eru notuð. 508 00:36:38,190 --> 00:36:42,180 Ef þú ert með alias skilgreiningu sem ekki nota sögu-gerð tilvísun, 509 00:36:42,180 --> 00:36:44,060 ef það verður bara byrjunin á stjórn 510 00:36:44,060 --> 00:36:46,520 og þú hefur frekari rök, þá allt sem þú setur á eftir að 511 00:36:46,520 --> 00:36:48,450 verður bætt við stjórn. 512 00:36:48,450 --> 00:36:52,040 Í þessu tilviki, sem dæmi I gaf bara það, sem notuð eru við fyrstu rök; 513 00:36:52,040 --> 00:36:54,610 vér höfum ekki hagnýtt allir aðrir. 514 00:36:54,610 --> 00:36:57,960 Ef önnur rök hefðu verið gefin á the stjórn lína, myndi hún ekki notuð. 515 00:36:57,960 --> 00:37:04,630 Þannig að ef þú ert að nota sögu tilvísun yfirleitt, þá verður þú að nota það til að fá hvaða rök. 516 00:37:04,630 --> 00:37:11,310 >> Það er annar hlutur hér vil ég bara að nefna, að hluta parenthetically, 517 00:37:11,310 --> 00:37:15,250 nefnilega að þessi saga kerfi með upphrópunarmerki 518 00:37:15,250 --> 00:37:18,010 fer aftur í upprunalegt C-skel. 519 00:37:18,010 --> 00:37:27,060 The tcsh kynnti sögu starfsemi 520 00:37:27,060 --> 00:37:30,910 sem nota konar skipanir og strengi frá ritstjóra, 521 00:37:30,910 --> 00:37:33,650 annaðhvort Emacs eða vi. 522 00:37:33,650 --> 00:37:36,430 Persónulega álit mitt er Emacs er miklu auðveldara að nota í þessum tilgangi 523 00:37:36,430 --> 00:37:39,390 jafnvel ef þú notar vi reglulega að breyta þinni. 524 00:37:39,390 --> 00:37:43,900 Það eru ýmsar Emacs skipanir sem eru nú framleidd til sögu. 525 00:37:43,900 --> 00:37:46,410 Control P fær fyrri línu í sögu listanum. 526 00:37:46,410 --> 00:37:48,840 Annar Control P mun fá þér einn fyrir það. 527 00:37:48,840 --> 00:37:50,540 Ör upp hjartarskinn the sami hlutur. 528 00:37:50,540 --> 00:37:54,190 Control N fær næsta skipun ef þú hefur þegar skrunað aftur nokkrar leiðir. 529 00:37:54,190 --> 00:37:55,880 Down arrow gerir það líka. 530 00:37:55,880 --> 00:38:00,480 Hægt er að færa vinstri til hægri með örvarnar og ýmsum öðrum hlutum. 531 00:38:00,480 --> 00:38:02,390 Þetta er hægt að gera nota af the sögu vélbúnaður 532 00:38:02,390 --> 00:38:05,070 miklu auðveldara en að nota upphrópunarmerki setningafræði, 533 00:38:05,070 --> 00:38:07,930 en þú myndir ekki nota það í alias skilgreiningu. 534 00:38:17,780 --> 00:38:20,020 Við munum fara yfir að sumir annar tími. 535 00:38:24,300 --> 00:38:25,810 >> Breytum. 536 00:38:26,880 --> 00:38:29,510 Þú veist hvað breytur eru í forritunarmál. 537 00:38:29,510 --> 00:38:31,680 The skeljar hafa þá líka. 538 00:38:31,680 --> 00:38:37,350 C-skel notar skipunina sett til að úthluta breytum, 539 00:38:37,350 --> 00:38:41,360 svo sem setur breytilega A við gildið b - 540 00:38:41,360 --> 00:38:46,390 eins og ég sagði, ónýt skilgreiningu heldur á því hvernig þetta er notað. 541 00:38:48,790 --> 00:38:52,410 The setja stjórn mun búa til breytu ef það er ekki þegar fyrir hendi. 542 00:38:55,270 --> 00:39:02,490 Jákvæðu breytur fyrir skel forskriftir geta talist breytur, 543 00:39:02,490 --> 00:39:10,750 en notkun þeirra og reglur um þá eru nokkuð mismunandi. 544 00:39:10,750 --> 00:39:14,320 Þú getur ekki úthluta gildi til $ 1 í tengslum við handrit. 545 00:39:14,320 --> 00:39:18,340 Þú þyrftir að skilgreina nýja breytu í þessu skyni ef einhver ykkar vildi. 546 00:39:23,000 --> 00:39:28,470 Sláðu sett án rök og þú færð lista yfir allar skilgreindir breytum. 547 00:39:28,470 --> 00:39:34,220 Og við skulum komast yfir til annarra skel mína hér og sjá hvað við fáum ef við gerum það. 548 00:39:34,220 --> 00:39:37,110 Nokkuð langur listi þar, ekki satt? 549 00:39:37,110 --> 00:39:40,990 Fletta upp smá. Horfðu á allt það. 550 00:39:40,990 --> 00:39:44,330 Sumir af þessir hlutir eru skilgreindar sjálfkrafa af skel. 551 00:39:44,330 --> 00:39:49,320 Skelin skapar breytu og gefur það gildi. 552 00:39:49,320 --> 00:39:52,730 Sumir þeirra eru skilgreind af skel, en þá skilgreina af notanda 553 00:39:52,730 --> 00:39:54,820 í samræmi við óskir hans. 554 00:39:54,820 --> 00:39:59,110 Og sumir þeirra eru búin til af notanda eftir því hvað hann er að gera þann daginn. 555 00:39:59,110 --> 00:40:01,880 Það er bara sett án rök. 556 00:40:06,920 --> 00:40:10,050 Það er undarleg lögun hér á þetta. 557 00:40:10,050 --> 00:40:17,980 Það verða að vera annaðhvort bil milli samasem merkið og breytu nafninu 558 00:40:17,980 --> 00:40:23,700 og gildi eða rými á báðum hliðum samasem merkið, 559 00:40:23,700 --> 00:40:28,940 eins og í þessu einn. 560 00:40:35,620 --> 00:40:41,340 Þetta mun ekki virka, og þetta raunverulega er gild stjórn 561 00:40:41,340 --> 00:40:43,390 en það mun ekki gera það sem þú ætlar. 562 00:40:43,390 --> 00:40:50,070 Að stjórn mun vinna því ef þú bara segja setja og breyta nafni 563 00:40:50,070 --> 00:40:54,890 með engin samasem merkið eða stilla og breytilegt nafn með samasem merkið og ekkert gildi, 564 00:40:54,890 --> 00:40:57,770 það mun láta breytu til núll gildi. 565 00:40:57,770 --> 00:41:00,120 Svo sett a = er gild stjórn. 566 00:41:00,120 --> 00:41:04,370 The setja stjórn má skilgreina meira en 1 breytu á sömu línu. 567 00:41:04,370 --> 00:41:11,240 Svo þessi skipun hér hefur áhrif að skilgreina bæði A og B til núll gildi. 568 00:41:11,240 --> 00:41:13,470 Sennilega ekki það sem þú vilt. 569 00:41:13,470 --> 00:41:17,940 Þetta hér, og fyrr, mun leiða til villu 570 00:41:17,940 --> 00:41:21,270 af því að = B er ekki gilt tjáningu. 571 00:41:21,270 --> 00:41:23,680 A breytu nafn má ekki byrja með samasem merkið. 572 00:41:26,760 --> 00:41:29,080 Og það eru þessir frekari hlutina hér. 573 00:41:29,080 --> 00:41:36,820 The ristill voru notaðar til að velja rök sögu línum, 574 00:41:36,820 --> 00:41:41,210 og þeir geta vera notaður - og ég ekki fara inn áður - til að breyta þessum hlutum. 575 00:41:41,210 --> 00:41:44,480 Þau geta einnig verið notuð til að breyta skel breytum. 576 00:41:44,480 --> 00:41:49,050 Þetta hér, $ a, hefur gildi. 577 00:41:49,050 --> 00:41:55,040 : R mun taka burt framlengingu. 578 00:41:55,040 --> 00:41:57,200 Í framhaldi verður nokkuð eftir punkt, 579 00:41:57,200 --> 00:41:59,200 punktur og eitthvað eftir það í lok skrá, 580 00:41:59,200 --> 00:42:03,230 aðeins í lok listanum eftir síðustu rista. 581 00:42:03,230 --> 00:42:05,480 Þannig að ég hef það hér. 582 00:42:05,480 --> 00:42:10,730 a er það. Það mun falla. O. 583 00:42:10,730 --> 00:42:16,510 Ef það er engin ending, aðeins pathnames eftir síðustu rista, mun það ekki hafa nein áhrif. 584 00:42:16,510 --> 00:42:27,480 a: H, sem breytu tjáning, mun taka af síðustu þáttur af directory listanum, 585 00:42:27,480 --> 00:42:29,660 aftur, bara eftir síðustu rista. 586 00:42:29,660 --> 00:42:33,160 Svo / a / b / c verður / a / b, 587 00:42:33,160 --> 00:42:38,870 en þetta er breytt vegna þess að þátturinn eftir listanum er núll. 588 00:42:38,870 --> 00:42:43,070 Hér er eitthvað sem einnig ég vil leggja áherslu á. 589 00:42:43,070 --> 00:42:46,770 Þessar undankeppni leita ekki fyrir tilvist þessara skráa. 590 00:42:46,770 --> 00:42:48,910 Þeir líta bara fyrir strengi. 591 00:42:48,910 --> 00:42:54,520 Þeim er ætlað að vinna skrá nöfn, pathnames, 592 00:42:54,520 --> 00:42:57,520 en þeir geta vera notaður á hvaða band jafnvel ef það er ekki skrá nafn. 593 00:42:57,520 --> 00:42:58,920 Og þeir líta ekki fyrir hendi, 594 00:42:58,920 --> 00:43:03,550 þannig að ef það er engin skrá, / a / b / c, þetta mun enn vinna. 595 00:43:03,550 --> 00:43:06,930 Hvort sem það er af allir nota er önnur spurning, en það vilja enn vinna. 596 00:43:06,930 --> 00:43:12,850 Breytur eru mismunandi í The Bourne skeljar. Við munum komast að því síðar. 597 00:43:12,850 --> 00:43:18,240 Dollaramerki má slapp bara eins upphrópunarmerki og stjörnu. 598 00:43:18,240 --> 00:43:21,760 Dollaramerki má slapp með sviga eða einn vitna. 599 00:43:21,760 --> 00:43:24,790 Gæsalappa hafa stakur áhrif í öllum skeljum 600 00:43:24,790 --> 00:43:28,690 neyða mat á dollaramerki breytilega tjáningu. 601 00:43:28,690 --> 00:43:31,960 Þannig að ef það er verið að slapp einn veg, í tvöföldum gæsalöppum getur haft áhrif 602 00:43:31,960 --> 00:43:34,380 að valda því að vera metin samt. 603 00:43:34,380 --> 00:43:37,090 Þetta er svolítið ruglingslegt. 604 00:43:37,090 --> 00:43:43,740 Ef það eru mörg stig af sleppi, svo sem einn vitna innan gæsalappa 605 00:43:43,740 --> 00:43:46,770 eða gæsalappa inni einn vitna, ættir þú að prófa að sjá hvað mun gerast 606 00:43:46,770 --> 00:43:49,520 til a breyta ef þú ert að nota einn. 607 00:43:49,520 --> 00:43:53,410 Þessir 2 aðstæður - tvöfaldur inni í einum, einn inni í tvöfaldur - 608 00:43:53,410 --> 00:43:55,980 ekki endilega gefa þér sömu niðurstöðu. 609 00:44:02,520 --> 00:44:05,600 Breytur, bundnum C-skel breytur. 610 00:44:05,600 --> 00:44:08,340 Breytur eru einnig breytur í C-skel, 611 00:44:08,340 --> 00:44:11,250 og þeir eru líka breytur í öðrum skeljar líka. 612 00:44:11,250 --> 00:44:15,230 Í C-skel, eru þeir greinilegur setur. 613 00:44:15,230 --> 00:44:18,130 Það sem ég var að segja áður eru um skel breytur. 614 00:44:18,130 --> 00:44:21,300 Breytur eru sérstakt sett af breytum 615 00:44:21,300 --> 00:44:28,650 að undanskildum nokkrum breytum sem við köllum bundið breytur, 616 00:44:28,650 --> 00:44:30,640 sem eru mjög mikilvæg og við munum fá í þeim síðar. 617 00:44:30,640 --> 00:44:34,950 Breytur eru sjálfkrafa liðið á 618 00:44:34,950 --> 00:44:41,800 að skeljar eða skipanir sem eru rekin úr skel. 619 00:44:41,800 --> 00:44:46,220 Önnur atriði eru það ekki. Skelin breytur eru samheiti ekki. Breytur eru. 620 00:44:46,220 --> 00:44:48,630 Það er þess vegna sem við köllum þá Breytur, 621 00:44:48,630 --> 00:44:55,030 Hugmyndin er sú að umhverfið nær fortíðinni bara núverandi skel. 622 00:44:55,030 --> 00:45:00,510 Þau er hægt að nota til að skilgreina hlutina fyrir skipanir. 623 00:45:00,510 --> 00:45:05,470 Hér er dæmi. Prentari, LPDEST. 624 00:45:05,470 --> 00:45:12,270 Báðir þessir breytur geta skilgreina prentara sem stjórn vilja nota til að prenta hluti. 625 00:45:12,270 --> 00:45:16,500 Ef þú ert með marga prentara í kring, getur þú vilt setja það sem þú vilt. 626 00:45:16,500 --> 00:45:21,320 Ástæðan sem við höfum 2 breytur er að mismunandi sett af stjórn voru skrifaðar 627 00:45:21,320 --> 00:45:23,870 nota þessar mismunandi breytum. 628 00:45:23,870 --> 00:45:25,910 Þú gætir gefið þeim mismunandi gildum. 629 00:45:25,910 --> 00:45:28,860 Líklegast að þú munt gefa þeim bæði sama gildi. 630 00:45:28,860 --> 00:45:35,840 Þessir hlutir vinna því að skipanir sem gera prentun 631 00:45:35,840 --> 00:45:40,740 voru forrita til að kanna gildi þessara stærða. 632 00:45:42,200 --> 00:45:46,150 Ef forrit voru ekki skrifaðar svona, ef það voru skrifuð til að gera eitthvað annað, 633 00:45:46,150 --> 00:45:48,280 breytan væri óviðkomandi. 634 00:45:48,280 --> 00:45:52,530 Svo að stýrikerfið er ekki að leita að þessum breytum 635 00:45:52,530 --> 00:45:55,210 hvert skipti sem þú átt við prentara. 636 00:45:55,210 --> 00:45:59,090 A stjórn sem gerir prentun er að leita að þessum breytum ef það er forritað þannig. 637 00:46:11,030 --> 00:46:15,240 Þessar breytur eru oft skilgreind í frumstilling skrá 638 00:46:15,240 --> 00:46:19,440 en ekki endilega. 639 00:46:19,440 --> 00:46:21,050 Er hægt að skilgreina þá á the stjórn lína. 640 00:46:21,050 --> 00:46:24,090 Þeir mega vera skilgreint í stjórn. 641 00:46:24,090 --> 00:46:28,740 A stjórn sem keyrir eitthvað gæti hafa eigin val sitt á breytum - 642 00:46:28,740 --> 00:46:32,390 breytur sem eru einstök fyrir tiltekinn hugbúnaðarpakka, til dæmis. 643 00:46:32,390 --> 00:46:36,740 Þeir verða skilgreindar þegar þú keyrir þessi pakki. 644 00:46:39,690 --> 00:46:42,680 Hvernig eru þessar breytur framhjá undir-skel? 645 00:46:42,680 --> 00:46:48,210 Þegar undir-skel er skrifað, er það ekki skrifað inn í þessi svæði. 646 00:46:48,210 --> 00:46:53,260 Flatarmál undir-skel sem er varið til umhverfið breytum 647 00:46:53,260 --> 00:46:56,450 er ekki skrifað af sub-skel, það er skrifað með afritun. 648 00:46:56,450 --> 00:47:00,530 Þegar þú keyrir venjuleg stjórn, svo sem þessar skipanir til að prenta eða hvað, 649 00:47:00,530 --> 00:47:03,840 þeir byrja á því að búa til nýja skel. 650 00:47:03,840 --> 00:47:06,190 Skel skapar skel og þá birtist hluti af því 651 00:47:06,190 --> 00:47:08,800 með skipuninni sem þú ert að keyra, sem er svolítið ruglingslegt, 652 00:47:08,800 --> 00:47:10,740 en það er hvernig þessar skipanir fá umhverfið breytum 653 00:47:10,740 --> 00:47:14,890 að þeir vísa síðan til síðar. 654 00:47:21,920 --> 00:47:28,010 Skipunin hér að skilgreina breytu setenv. 655 00:47:28,010 --> 00:47:36,470 Það er hvernig þú skilgreinir það. Það er 3 þættir: setenv Breytilegir, gildi. 656 00:47:36,470 --> 00:47:44,710 Ef þú bara setenv án rök, hvað þú færð? 657 00:47:47,220 --> 00:47:48,810 Listi yfir allar þessar breytur. 658 00:47:48,810 --> 00:47:53,190 Aftur, þess 'a ágætur langur listi og í þessu tilfelli, eins og í öðrum, 659 00:47:53,190 --> 00:47:57,320 þessar breytur eru skilgreindar mestu með rekstri innskráningu mína af skel sjálfri 660 00:47:57,320 --> 00:47:59,740 fremur en öllu sem ég gerði. 661 00:47:59,740 --> 00:48:03,580 There 'annar stjórn hér, printenv. 662 00:48:07,520 --> 00:48:10,340 Sem prentar einnig út umhverfið. 663 00:48:10,340 --> 00:48:15,240 Eftir þessu síðasta sem hér, ritstjóri = vi. 664 00:48:15,240 --> 00:48:21,120 Sem segir að ef ég er að nota eitthvað sem kallar ritstjóri 665 00:48:21,120 --> 00:48:25,530 og ég ekki tilgreina ekki ritstjóri og það gerir mér val, getur það gefið mér VI. 666 00:48:25,530 --> 00:48:37,280 Hvað ef ég printenv ritstjóri? Það segir mér hvað það er. 667 00:48:37,280 --> 00:48:41,340 Rétt áður en að það var breytilegt, minna. 668 00:48:41,340 --> 00:48:46,040 Þetta eru vanskil valkosti þegar ég hlaupa the Minna stjórn, 669 00:48:46,040 --> 00:48:49,360 sem sýnir skrár. 670 00:48:49,360 --> 00:48:55,910 Þannig að ef ég geri það, printenv getur tekið 1 rök eða 0 rök, 671 00:48:55,910 --> 00:48:58,070 ekki meira en 1. 672 00:49:01,800 --> 00:49:05,690 Það eru aðrar skipanir líka, en við erum ekki að fara að fá inn allt það í dag. 673 00:49:05,690 --> 00:49:11,010 Man það voru breytilyklum fyrir skel breytur eins og: H, 674 00:49:11,010 --> 00:49:14,350 sem mun falla síðasta stak í pathname, 675 00:49:14,350 --> 00:49:17,950 eða: r, sem mun falla í framhaldi. 676 00:49:17,950 --> 00:49:23,110 Þeirra sem nú gilda um umhverfið breytum líka. Þeir gerðu ekki að venjast. 677 00:49:23,110 --> 00:49:24,960 Það er notað til að vera að þeir gætu ekki breytt. Nú geta þeir verið. 678 00:49:24,960 --> 00:49:29,190 Það er einn af the framfarir með þróunar skeljar í gegnum árin. 679 00:49:29,190 --> 00:49:35,620 Ég var að segja að skeljar sem hluti af umhverfi 680 00:49:35,620 --> 00:49:43,040 og skel breytur í C-skel eru, með nokkrum undantekningum, skarpar setur. 681 00:49:43,040 --> 00:49:46,790 Þú getur að koma á umhverfi breyta og skel breytu með sama nafni. 682 00:49:46,790 --> 00:49:49,220 Þeir vilja vera mismunandi breytur, þeir geta haft mismunandi gildi. 683 00:49:49,220 --> 00:49:53,090 Breyting á verðmæti einn mun ekki breyta gildi hinn. 684 00:49:53,090 --> 00:49:58,070 Þessar breytur eru allir metnir með dollaramerki - $ a, $ hvað. 685 00:49:58,070 --> 00:50:02,340 Svo hvað ef þú hefur þetta? Veistu hver þú fá? 686 00:50:02,340 --> 00:50:04,520 Í prófunum mínum ég fékk skel breytu, 687 00:50:04,520 --> 00:50:07,240 en þetta er ekki skjalfest og þú getur ekki treyst á það. 688 00:50:07,240 --> 00:50:10,270 Svo ég spyr þig, er að búa til skel og umhverfið breytum 689 00:50:10,270 --> 00:50:13,490 með sama nafni góð hugmynd? Nei lagi. 690 00:50:13,490 --> 00:50:17,460 Hvað eru þessir helstu undantekningar þar sem umhverfið og skel breytur 691 00:50:17,460 --> 00:50:19,860 eru tengd við hvert annað? 692 00:50:19,860 --> 00:50:27,470 Það eru þessar 4. 693 00:50:32,030 --> 00:50:35,510 Capital bréf TERM umhverfi breyta, 694 00:50:35,510 --> 00:50:41,540 skel breytilegum tíma í litlum stöfum, tegund flugstöðina kappgirni. 695 00:50:41,540 --> 00:50:47,430 Ég ætla bara að fara að fara yfir hér og ég ætla að gera echo, a gagnlegur stjórn hér, 696 00:50:47,430 --> 00:50:52,560 $ TERM $ tíma. Og þar. 697 00:50:52,560 --> 00:51:00,570 xterm er flugstöðinni tegund fyrir glugga sem birtast í X Window System. 698 00:51:00,570 --> 00:51:04,330 xterm-litur er tilbrigði sem að leyfa mismunandi litum. 699 00:51:04,330 --> 00:51:06,580 Hvers vegna eigum við að skilgreina þetta? Hvað er þetta gott fyrir? 700 00:51:06,580 --> 00:51:09,740 Skipanir sem endurraða skjáinn eins og ritstjóri 701 00:51:09,740 --> 00:51:13,680 senda sérstaka röð, sem kallast Escape röð, 702 00:51:13,680 --> 00:51:18,160 í skjáhermi eða glugga til að endurraða það og svo framvegis. 703 00:51:18,160 --> 00:51:20,990 Þeir raðir eru mismunandi fyrir mismunandi tegundir af skautanna. 704 00:51:20,990 --> 00:51:23,100 Þetta segir það hver sjálfur að nota. 705 00:51:23,100 --> 00:51:25,900 Stundum eru mál þar. 706 00:51:25,900 --> 00:51:28,600 Þú vilt kannski breyta því. 707 00:51:28,600 --> 00:51:30,780 Ef hlutirnir eru ekki að virka, stundum flugstöðinni er stillt vitlaust, 708 00:51:30,780 --> 00:51:36,440 þú mega vera fær til að laga það með því að endurskilgreina hugtakið breytu. 709 00:51:36,440 --> 00:51:43,420 Í þessum tilvikum, að breyta einu breytu, umhverfi breyta eða skel breytu, 710 00:51:43,420 --> 00:51:45,970 ætti að breyta hinn. 711 00:51:45,970 --> 00:51:50,970 Ég hef uppgötvað í gegnum reynslu að breyta tíma í hástöfum 712 00:51:50,970 --> 00:51:54,060 ekki alltaf breytt skel breytilegum tíma í litlum stöfum. 713 00:51:54,060 --> 00:51:55,550 Þetta er padda. 714 00:51:55,550 --> 00:51:59,400 Ég veit ekki hvort það er alltaf satt. Flest af þeim tíma það er ekki satt, en það getur verið. 715 00:51:59,400 --> 00:52:02,490 Svo ef þú gerir breytingar, bara kíkja. 716 00:52:02,490 --> 00:52:05,830 Það er ekki oft sem þú þarft að breyta því gildi, en einu sinni í a á meðan þú gerir. 717 00:52:05,830 --> 00:52:08,260 Umhverfi breyta notanda. 718 00:52:08,260 --> 00:52:12,070 Aftur, umhverfi breyta hástöfum, skel breytu í litlum stöfum. 719 00:52:12,070 --> 00:52:13,710 Þetta er notendanafnið. 720 00:52:13,710 --> 00:52:16,730 Það er einungis undir mjög sérstakar aðstæður 721 00:52:16,730 --> 00:52:18,420 sem þú vilt til að breyta því. 722 00:52:18,420 --> 00:52:22,350 Ef notendanafnið þitt er einhver annar, það getur kastað alls kyns hlutum burt. 723 00:52:22,350 --> 00:52:26,040 Heimasvæði, heimasvæði notanda. 724 00:52:26,040 --> 00:52:28,060 Aftur, myndir þú ekki vilja til að breyta því. 725 00:52:28,060 --> 00:52:32,260 Tilkynningar í öllum þessum málum og sá sem við erum að fara að ná, leið breytu, 726 00:52:32,260 --> 00:52:37,070 umhverfi breyta er með hástöfum og bundna skel breyta er í litlum stöfum. 727 00:52:37,070 --> 00:52:39,240 Ef þú breytir einn, ættir þú að breyta öðrum. 728 00:52:39,240 --> 00:52:45,960 Þess konar bindandi geta ekki komið eins og þú getur ekki binda 2 breytur, 729 00:52:45,960 --> 00:52:50,570 Annar en þessi 4, og binding við þessar breytur geta ekki hægt að hætta, 730 00:52:50,570 --> 00:52:52,090 þú getur ekki aðskilið þau. 731 00:52:52,090 --> 00:52:55,820 Svo þessi 4 pör af breytum eru bundnir. 732 00:52:55,820 --> 00:52:59,020 Þeir alltaf verður. Enginn aðrir vilja vera. 733 00:52:59,020 --> 00:53:05,720 Þar að auki, væri til dæmis hægt að búa til breytur sem bera sömu nöfn 734 00:53:05,720 --> 00:53:07,780 hið gagnstæða gerðum. 735 00:53:07,780 --> 00:53:11,600 Þú gætir gert skel breytilegum tíma í litlum stöfum 736 00:53:11,600 --> 00:53:14,990 eða umhverfisbreyta TERM hástöfum. 737 00:53:14,990 --> 00:53:19,040 Þeir breytur væri óháð þessum paraðar breytur 738 00:53:19,040 --> 00:53:20,780 og þeir myndu vera óháð hvort öðru. 739 00:53:20,780 --> 00:53:23,780 Ég get ekki ímyndað mér af hverju þú myndir gera það nema þú viljir að rugla fólk. 740 00:53:24,600 --> 00:53:29,730 Þetta hér, slóð breytu, þetta er mjög mikilvægt. 741 00:53:29,730 --> 00:53:35,550 Annar hlutur hér er að það geta verið tilfelli 742 00:53:35,550 --> 00:53:40,430 breyta með svipuðum fyrir pöruð nöfn, sem ekki eru bundnir við hvert annað. 743 00:53:40,430 --> 00:53:45,000 Það geta verið breytur, skel og skel, í höfuðborg og litlum stöfum. 744 00:53:45,000 --> 00:53:48,300 Byggist á því nafni, þú veist ekki hvort að breytu er skel breytu 745 00:53:48,300 --> 00:53:51,580 eða umhverfi breyta, og þeir eru ekki bundnir við hvert annað. 746 00:53:51,580 --> 00:53:55,300 Svo að góður af pöruð nöfn felur ekki í sér bundið breytur. 747 00:53:55,300 --> 00:53:58,830 Slóðin breytu, sem ég var að sýna áður, 748 00:53:58,830 --> 00:54:01,880 er listi yfir pathnames sem skel útlit fyrir skipanir. 749 00:54:01,880 --> 00:54:12,320 Skulum fá yfir í þessa glugga hér og við munum gera echo $ PATH, hástafi - 750 00:54:12,320 --> 00:54:20,230 umhverfi breyta - echo $ PATH, litlum stöfum - skel breytu. 751 00:54:20,230 --> 00:54:24,980 Takið eftir því að listi af möppum er það sama. Þetta eru bundnir. 752 00:54:24,980 --> 00:54:26,590 Breyta einum, að breyta öðrum. 753 00:54:26,590 --> 00:54:32,970 Í umhverfi breytu þættir eru aðskilin með ristill. Takið eftir að. 754 00:54:32,970 --> 00:54:35,130 Skelin breytur eru aðskilin með bilum. 755 00:54:35,130 --> 00:54:38,760 Þetta umhverfi breyta er einn strengur. 756 00:54:38,760 --> 00:54:41,480 Skel breytu er fylki. 757 00:54:41,480 --> 00:54:43,490 The Bourne skelin ekki hafa fylki. 758 00:54:43,490 --> 00:54:46,600 Bash gerir, en þetta er nú þegar fastur hluti af skel. 759 00:54:46,600 --> 00:54:48,660 Þetta er einum streng og ekki vera fylki. 760 00:54:48,660 --> 00:54:50,420 C-skel hafði alltaf fylki. 761 00:54:50,420 --> 00:54:52,630 Fylki eru miklu auðveldara að vinna með. 762 00:54:52,630 --> 00:54:54,400 Þú getur átt við hluta hennar. 763 00:54:54,400 --> 00:55:02,350 Svo echo $ PATH [1] og ég fæ / usr / bin, fyrsta þáttur. 764 00:55:02,350 --> 00:55:09,950 Aftur, muna dollaramerki stendur fyrir síðasta þáttur í sögu listanum. 765 00:55:09,950 --> 00:55:16,850 Hvað gerist þar? Hann reyndi að finna dollaramerki sem breytu tákn. 766 00:55:16,850 --> 00:55:20,850 Ég flýja það. Úps. Það myndi ekki taka það heldur. 767 00:55:20,850 --> 00:55:23,690 Sumir af þessir hlutir virka ekki svo vel. 768 00:55:23,690 --> 00:55:28,140 Kannski við verðum bara að sleppa henni. 769 00:55:28,140 --> 00:55:36,980 Stjarnan vísar til the heild hlutur, en það er það sem þú færð ef þú tilgreinir ekki stak. 770 00:55:36,980 --> 00:55:46,170 Önnur leið sem array breytur geta vera handleika, 771 00:55:46,170 --> 00:55:49,500 fjöldi staka þar, 7 þætti. 772 00:55:49,500 --> 00:55:53,410 Hér erum við að setja pundi skrá þig áður breytu nafninu. 773 00:55:53,410 --> 00:55:58,280 Hér er annað. Setja spurningarmerki þar. 774 00:55:58,280 --> 00:56:03,170 Það er röklegt gildi. Það gefur til kynna að breytan er til staðar. 775 00:56:03,170 --> 00:56:05,160 Það er önnur leið til að vinna með breytum. 776 00:56:05,160 --> 00:56:06,660 Sem, við the vegur, þarf ekki að vera fylki breytu. 777 00:56:06,660 --> 00:56:08,210 Það gæti verið hvaða breytu. 778 00:56:08,210 --> 00:56:11,840 Og ef ég geri, það er engin sem breytu og ég fæ 0. 779 00:56:11,840 --> 00:56:14,990 Annar lítill hlutur þarna um breytilegum mati. 780 00:56:23,670 --> 00:56:32,950 Aftur til þessa hér, ef fyrir sumir ástæða þú vilja til vinna með þetta 781 00:56:32,950 --> 00:56:37,990 frekar en að vinna með fylki, skel breytu, 782 00:56:37,990 --> 00:56:41,470 það eru skipanir sem getur aðskilið þetta byggt á ristli. 783 00:56:41,470 --> 00:56:44,080 Í staðreynd, ef þú ert að fara að vera að gera þetta í Bash skel hugsanlega, 784 00:56:44,080 --> 00:56:47,110 einhvers konar handrit, sem væri líklega hvernig þú myndir gera það. 785 00:56:47,110 --> 00:56:50,350 En í C-skel það er miklu auðveldara að nota array. 786 00:56:50,350 --> 00:56:58,250 Í Bourne skel, eru breytur úthlutað af einum tjáningu eins og þessa, 787 00:56:58,250 --> 00:57:01,760 eins og the vegur þú gætir úthluta breytu í forritunarmáli, 788 00:57:01,760 --> 00:57:05,110 og hér það skal vera bil. 789 00:57:05,110 --> 00:57:09,110 Það er nauðsynlegt að það verður bara 1 band. 790 00:57:09,110 --> 00:57:14,980 Í Bourne-gerð skeljar, eru allar breytur skel breytur. 791 00:57:14,980 --> 00:57:19,250 Breytur eru hlutmengi af skel breytum. 792 00:57:19,250 --> 00:57:24,060 Þeir eru aðgreindar frá non-umhverfið breytum með því að flytja. 793 00:57:24,060 --> 00:57:28,860 Stjórn til að gera það er útflutningur, eins og útflutnings prentari. 794 00:57:28,860 --> 00:57:34,930 Ef við værum að skilgreina slíka breytu, 795 00:57:34,930 --> 00:57:38,480 ef við vildum prentun skipunina til að finna það, það þyrfti að vera umhverfi breyta, 796 00:57:38,480 --> 00:57:40,730 og það er hvernig við gera það einn. 797 00:57:40,730 --> 00:57:42,090 Hér það er eitthvað svona ruglingslegt. 798 00:57:42,090 --> 00:57:50,430 Þetta mál, útflutningur við umhverfið, dregið af þessu Bourne skel hugtak, 799 00:57:50,430 --> 00:57:54,520 og enn að tjáning er notað í lýsingar á C-skel, 800 00:57:54,520 --> 00:57:57,920 þar sem ekki er svo stjórn sem útflutnings. 801 00:57:57,920 --> 00:58:06,200 Ef þú segir bara útflutning af sjálfu sér, þú færð lista yfir flutt - 802 00:58:06,200 --> 00:58:10,620 Þannig að ef ég bara ekki flytja hér, ekkert sem heitir. 803 00:58:13,620 --> 00:58:15,200 Jæja, þar sem við förum. 804 00:58:15,200 --> 00:58:17,010 Þetta, við the vegur, eru einnig skilgreind af skel. 805 00:58:17,010 --> 00:58:19,400 Ég vissi ekki að skilgreina eitthvað af þessu af mér. 806 00:58:19,400 --> 00:58:23,550 Skelin er alls konar hluti af sjálfu sér. 807 00:58:23,550 --> 00:58:26,650 Það ætti að gera hlutina sjálfkrafa. 808 00:58:30,240 --> 00:58:36,880 Í Bash eða Korn skel, hægt að keyra skipun eins og þetta, 809 00:58:36,880 --> 00:58:42,000 sem mun bæði gefa breytu gildi og flytja hana í 1 stjórn. 810 00:58:42,000 --> 00:58:46,150 Í Bourne skel þeir verða að vera aðskilin skipanir eins flytja. 811 00:58:46,150 --> 00:58:48,410 Hér er annar þáttur sem er ruglingslegt. 812 00:58:48,410 --> 00:58:52,220 The setja stjórn í C-skel skilgreinir breytur 813 00:58:52,220 --> 00:58:55,550 og án rök segir þér hvaða gildi breyturnar 'eru. 814 00:58:55,550 --> 00:59:01,140 Í Bash skel, sem sett stjórn án rök hjartarskinn the sami hlutur, 815 00:59:01,140 --> 00:59:03,580 en með rökum það gerir eitthvað alveg öðruvísi. 816 00:59:03,580 --> 00:59:06,200 Svo þetta eru ýmis rök hér. 817 00:59:06,200 --> 00:59:10,460 Sumir af þessir ert Breytur, sumir þeirra eru skel breytur. 818 00:59:10,460 --> 00:59:13,200 Öllum þeim er skel breytur raun. Sumir af þeim sem eru Breytur. 819 00:59:15,690 --> 00:59:23,920 The setja stjórn með rökum er hægt að nota til að reka 820 00:59:23,920 --> 00:59:28,220 á jákvæðu þáttum í handriti, 821 00:59:28,220 --> 00:59:33,910 sem er leið til að fá þá alla í einu. 822 00:59:33,910 --> 00:59:36,150 Við getum í raun ekki fara inn að í dag. 823 00:59:36,150 --> 00:59:39,580 Það er einnig hægt að nota til að breyta skel hegðun. 824 00:59:39,580 --> 00:59:46,700 Sérstaklega í Bash eru breytur sem ákvarða hvernig skel hegðar sér. 825 00:59:46,700 --> 00:59:51,310 Þá líka bara þetta eina skipun sem þú gætir séð, þessi skipun. 826 00:59:51,310 --> 00:59:59,050 Typeset eftir breytum og breytilegum tegundum er notað í Korn og Bash skeljar. 827 00:59:59,050 --> 01:00:04,970 Það er ekki nauðsynlegt, en það er hægt að nota til að takmarka þau gildi á breytum, 828 01:00:04,970 --> 01:00:08,400 sem getur verið gagnlegt til að koma í veg fyrir villur, og það er nokkuð algengt. 829 01:00:08,400 --> 01:00:11,640 Þannig að ég ætla bara að minnast á að í tilfelli þú sérð það einhversstaðar. 830 01:00:17,290 --> 01:00:19,160 HVAR stjórn. 831 01:00:19,160 --> 01:00:22,490 Man ég nefndi áðan er þar stjórn í C-skel, 832 01:00:22,490 --> 01:00:28,750 sem getur sagt þér hvar stjórn pathname. 833 01:00:28,750 --> 01:00:32,580 Hér er stjórn skipta. 834 01:00:32,580 --> 01:00:41,900 Þú ættir að finna á lyklaborðinu einhverstaðar staf sem lítur svona út. 835 01:00:41,900 --> 01:00:44,910 Staðsetningu á lyklaborðinu er að fara að mismunandi. 836 01:00:44,910 --> 01:00:47,050 Við höfum kallað það backquote. Það er óður í the stærð af a vitna. 837 01:00:47,050 --> 01:00:48,720 Það fer frá efri vinstri til að lækka rétt. 838 01:00:48,720 --> 01:00:52,690 Hér á Mac lyklaborðinu mínu það er í efri vinstri-hönd horn. 839 01:00:52,690 --> 01:00:58,150 Að eðli er hægt að nota til að keyra skipun innan stjórn. 840 01:00:58,150 --> 01:01:03,400 Ef þú ert með tjáningu inni backquotes, 841 01:01:03,400 --> 01:01:07,080 að tjáning er stjórn, það er að keyra. 842 01:01:07,080 --> 01:01:09,010 Framleiðsla þess stjórn 843 01:01:09,010 --> 01:01:11,980 er síðan skipt út fyrir allt backquote tjáningu 844 01:01:11,980 --> 01:01:16,110 inni lengri stjórn sem þá rekur með þessi framleiðsla 845 01:01:16,110 --> 01:01:22,010 sem hluta af streng þess rök og svo framvegis. 846 01:01:22,010 --> 01:01:28,640 Hér er stjórn sem notar það. 847 01:01:28,640 --> 01:01:32,340 Skulum sýna aðgerðina hér. 848 01:01:44,980 --> 01:01:49,090 Við skulum fara upp hér, taka út backquotes. 849 01:01:49,090 --> 01:01:54,410 Control A fær mig til the byrjun af the lína við Emacs útgáfa setningafræði. 850 01:01:54,410 --> 01:02:00,380 Svo langt pathnames er það hvar er, 851 01:02:00,380 --> 01:02:05,040 en þegar ég geri það svona, innstungur það þá í þeim lista af pathnames 852 01:02:05,040 --> 01:02:08,750 í stað allri þessari backquote tjáningu og keyrir LS-l á þeim. 853 01:02:08,750 --> 01:02:11,120 Konar þægilegt, ha? 854 01:02:11,120 --> 01:02:14,860 Svo er það einn snyrtilegur hlutur. Það er hvernig backquotes vinna. 855 01:02:14,860 --> 01:02:17,560 Nú skulum fara niður smá lengra. 856 01:02:17,560 --> 01:02:22,050 Þetta eru samheiti. Ég nota reyndar þetta. 857 01:02:22,050 --> 01:02:26,410 Ég ætla að reyna að fá þetta í með 1 Breyti aðgerð. 858 01:02:34,900 --> 01:02:36,900 Allt í lagi. 859 01:02:36,900 --> 01:02:39,630 Nú skulum sjá hvernig þær skilgreiningar kom út. 860 01:02:39,630 --> 01:02:44,930 alias lwh segja mér hvernig það er skilgreint. 861 01:02:44,930 --> 01:02:51,210 Eftir það er bara þetta, en ytri markaðarins hafa verið teknar burt 862 01:02:51,210 --> 01:02:53,750 og upphrópunarmerki er tekið burt. 863 01:02:53,750 --> 01:02:58,940 ! *, Heill listi af öllum rökum. 864 01:02:58,940 --> 01:03:03,580 Í alias skilgreiningu eiga aftur að þar sem ég nota þetta. 865 01:03:03,580 --> 01:03:10,620 lwh KSH bash. Allt í lagi. 866 01:03:10,620 --> 01:03:13,960 Sjá hvernig það virkar? Það sparar mér vélritun. 867 01:03:13,960 --> 01:03:16,440 Við skulum fara upp a lítill hluti bara til að nefna eitthvað annað hér. 868 01:03:19,150 --> 01:03:23,120 Tilkynning hér þessar mismunandi skeljar. Ég ætti að hafa getið þetta áður. 869 01:03:23,120 --> 01:03:36,060 The CNet hefur 2 hérna og svo er / bin / tcsh. 870 01:03:36,060 --> 01:03:39,870 Við gátum að koma með öðrum hætti að þeir eru í raun þau sömu skrá. 871 01:03:39,870 --> 01:03:43,150 Man ég var að segja ef þú slærð SH þú færð bash. 872 01:03:43,150 --> 01:03:47,390 Sláðu þessu og þú færð þetta. 873 01:03:47,390 --> 01:03:51,730 En þeir eru ekki tengdir. Þeir hafa einn sjálfur þar. 874 01:03:51,730 --> 01:03:54,910 Og þetta er ekki góður af skrá sem hægt er að hringja annað. 875 01:03:54,910 --> 01:03:59,460 Þannig að þeir eru aðskilin skrár, en C-skel sjálfur eru þau sömu skrá. 876 01:03:59,460 --> 01:04:03,640 Back niður hér, hitt hér, þetta alias, 877 01:04:03,640 --> 01:04:09,090 huga að er í gangi þessa skipun, skrá. 878 01:04:09,090 --> 01:04:13,810 Sem alias keyrir það. Skrá segir þér hvaða skrá. 879 01:04:13,810 --> 01:04:20,330 Svo fwh KSH bash. Allt í lagi. 880 01:04:20,330 --> 01:04:23,230 Það er the framleiðsla af the skrá stjórn. 881 01:04:23,230 --> 01:04:24,630 Ég veit ekki hvort þú veist hvað þetta þýðir hér, 882 01:04:24,630 --> 01:04:26,750 Mach-O alhliða tvöfaldur með 2 arkitektúr. 883 01:04:26,750 --> 01:04:30,470 Það eru 2 mögulegar gerðir örgjörva í Mac, 884 01:04:30,470 --> 01:04:34,780 og sumir forrit voru skrifuð til að geta keyrt með bæði, 885 01:04:34,780 --> 01:04:37,950 og skrá stjórn getur ákveðið að, svo það er það sem þetta þýðir. 886 01:04:37,950 --> 01:04:40,660 Báðar þessar skrár voru skrifuð svona. 887 01:04:40,660 --> 01:04:43,760 Svo sjáum við hvernig alias virkar, sjáum hvernig backquote virkar, 888 01:04:43,760 --> 01:04:48,640 við sjáum hvernig the raunverulegur skrá LS eða skrá virkar. 889 01:04:52,050 --> 01:04:57,000 Þetta gæti ekki vinna. Reyna "þar sem" og "lwh þar". Jæja, við skulum reyna það. 890 01:04:57,000 --> 01:05:01,040 þar sem. 891 01:05:01,040 --> 01:05:03,500 þar er skel innbyggður-í. 892 01:05:03,500 --> 01:05:06,970 Mundu áðan við sýndu að bash ekki hafa þar. 893 01:05:06,970 --> 01:05:10,080 Ef þú slærð þar í Bash skel, fá þér villuboð. 894 01:05:10,080 --> 01:05:12,540 Það er bara hluti af skel frekar en að vera aðskilin stjórn. 895 01:05:12,540 --> 01:05:20,000 Hvað gerist ef ég tegund lwh leita að hvar? Sjá hvað gerist þar. 896 01:05:20,000 --> 01:05:22,850 Hljóp þar þar, fékk þessa framleiðsla, og þá reynt að keyra LS 897 01:05:22,850 --> 01:05:25,600 sem l um hvar er skel innbyggður-í. 898 01:05:25,600 --> 01:05:28,790 hvar er það, en hinar eru ekki til. 899 01:05:28,790 --> 01:05:32,090 Ekkert af þessum til, reyndar. 900 01:05:32,090 --> 01:05:35,560 Svo það þýðir ekki alltaf að vinna, og það sýnir einnig hvernig sumir hlutir 901 01:05:35,560 --> 01:05:39,580 gera ekki alveg hvað þú gætir hafa hugsun. 902 01:05:40,930 --> 01:05:43,010 Við skulum fara niður smá lengra hér. 903 01:05:44,890 --> 01:05:54,760 Þetta hér er í Bash. Það er einnig stjórn skipta eins og backquote. 904 01:05:54,760 --> 01:06:05,280 En ólíkt backquote, notar það þessa breytu stíl. 905 01:06:05,280 --> 01:06:09,860 There ert a tala af tjáning sem byrja með dollaramerki, 906 01:06:09,860 --> 01:06:16,070 og á meðan þetta eru ekki breytur, þeir láni notkun dollaramerki 907 01:06:16,070 --> 01:06:19,570 að gefa til kynna tjáningu af einhverju tagi. 908 01:06:19,570 --> 01:06:23,550 Það má umkringdur sviga eða hornklofa eða tvöfaldur sviga, 909 01:06:23,550 --> 01:06:26,320 sem hefur öðrum tilgangi. 910 01:06:26,320 --> 01:06:29,500 Single sviga hér eru stjórn skipta bara eins og backquotes. 911 01:06:29,500 --> 01:06:32,720 Tvöfaldur sviga er í raun tölur aðgerð. 912 01:06:32,720 --> 01:06:35,380 Það eru önnur syntaxes, aðrar aðgerðir. 913 01:06:35,380 --> 01:06:41,520 Backquote setningafræði er í boði í Bash. 914 01:06:41,520 --> 01:06:46,780 Þó, þetta er æskilegt. Það er miklu auðveldara að lesa og það gerir hreiður. 915 01:06:46,780 --> 01:06:51,300 Hægt er að hafa inni $ (stjórn) annað stjórn, 916 01:06:51,300 --> 01:06:54,590 eitthvað eins og - 917 01:07:14,560 --> 01:07:18,210 Ég fá lista þar. 918 01:07:18,210 --> 01:07:21,670 Sem myndi vinna ef ég hefði backquote líka. 919 01:07:32,050 --> 01:07:38,470 Hvað ef ég vil gera eitthvað eins og - 920 01:08:03,390 --> 01:08:06,430 Þú myndi sennilega ekki raunverulega nota þessa skipun, 921 01:08:06,430 --> 01:08:14,160 en þetta innri stjórn útskipting bergmál nöfn allra skrám sem byrja á A, 922 01:08:14,160 --> 01:08:18,229 þá er þetta einn keyrir LS-l á þeim skrám, 923 01:08:18,229 --> 01:08:20,500 og þá er þetta eitt bergmál bara framleiðsla. 924 01:08:21,729 --> 01:08:24,479 Þú myndi sennilega ekki gera þetta, þú vilt bara að gera bergmál eða LS, 925 01:08:24,479 --> 01:08:29,450 en þetta sýnir hvernig hreiður skipana virkar. 926 01:08:29,450 --> 01:08:34,380 Svo bara annar lögun hér. 927 01:08:34,380 --> 01:08:37,450  Ég nefndi þetta áðan, að þegar þú ert þar í C-skel, 928 01:08:37,450 --> 01:08:42,770 tegund virkar í Bourne-gerð skeljar til að finna skipanir. 929 01:08:48,939 --> 01:08:52,270 Innbyggður-í stjórn, bara það sem ég var að segja það. 930 01:08:52,270 --> 01:08:54,640 Skipanir eru hluti af skel, eins og hvar. 931 01:08:54,640 --> 01:08:59,880 Þegar skel framkvæmt skipun eins LS, staðsetur það í gegnum the gangstígur, 932 01:08:59,880 --> 01:09:03,029 finnur það á einhvern möppu einhvers staðar, 933 01:09:03,029 --> 01:09:05,800 les það í minni, skapar nýja skel, 934 01:09:05,800 --> 01:09:08,960 les stjórn LS eða hvað inn í skel 935 01:09:08,960 --> 01:09:11,450 þar sem Breytur eru þegar staðsett, 936 01:09:11,450 --> 01:09:14,000 og þá flytja það framkvæmd til þess. 937 01:09:14,000 --> 01:09:18,319 Innbyggður-í stjórn, kóði fyrir viðkomandi stjórn er inni í skel, 938 01:09:18,319 --> 01:09:21,460 svo skelin bara byrjar framkvæmd hluta af eigin númer þess. 939 01:09:21,460 --> 01:09:24,569 þar er svo stjórn. Það kemur í raun hraðar. 940 01:09:24,569 --> 01:09:28,380 Það þarf ekki að lesa neitt í minni, það er nú þegar í minni. 941 01:09:28,380 --> 01:09:32,460 Innbyggður-í stjórn alltaf hafa forgang fram yfir skipanir með sama nafni. 942 01:09:32,460 --> 01:09:36,050 Skipanir sem eru í möppum í götunni kann að hafa sama nafn, 943 01:09:36,050 --> 01:09:39,090 skipanir í mismunandi möppur, skrár í mismunandi möppur. 944 01:09:39,090 --> 01:09:41,740 Sá sem verður fyrr í götunni er það sem þú munt fá. 945 01:09:41,740 --> 01:09:43,770 Ef það er a innbyggður-í stjórn, þú færð alltaf það. 946 01:09:43,770 --> 01:09:47,890 Það er engin leið til að gefa það a lægri forgang en skipun í braut. 947 01:09:47,890 --> 01:09:54,140 Ef þú vilt fá þessi slóð stjórn, getur þú slærð inn fullt pathname. 948 01:09:54,140 --> 01:09:55,850 Ef það væri stjórn þar í götunni einhvers staðar, 949 01:09:55,850 --> 01:09:58,440 þú gætir tegund / bin / þar og þú vilt fá hana. 950 01:09:58,440 --> 01:10:01,800 Ef þú vilt ekki að slá alla pathname, gæti þú skilgreinir alias. 951 01:10:01,800 --> 01:10:06,310 Í staðreynd, ef þú gafst samheiti sama nafn og the innbyggður-í stjórn, myndi það vinna 952 01:10:06,310 --> 01:10:08,790 vegna þess að alias skilgreiningu er metin 953 01:10:08,790 --> 01:10:13,220 áður en skel telur að það er innbyggt í stjórn sem ætti að framkvæma. 954 01:10:18,810 --> 01:10:23,440 Þá fær þetta svolítið flóknara með nokkrum skipunum hér. 955 01:10:23,440 --> 01:10:29,880 Um er að ræða nokkrar skipanir eru í raun innbyggð í stjórn og í götunni. 956 01:10:29,880 --> 01:10:34,140 Einn af þeim er echo, stjórn sem ég nota bara smá stund síðan í þeim dæmum. 957 01:10:34,140 --> 01:10:37,410 Echo er stjórn í the gangstígur og það er í öllum skel. 958 01:10:37,410 --> 01:10:40,580 Þeir gera ekki endilega allt hegða sér á sama hátt. 959 01:10:40,580 --> 01:10:42,970 Það var upphaflega skipun aðeins í götunni. 960 01:10:42,970 --> 01:10:45,280 Það var byggt í þeim skeljar síðar. 961 01:10:45,280 --> 01:10:48,080 Vegna þess að það eru möguleikar sem velta á umhverfið 962 01:10:48,080 --> 01:10:52,970 og stjórn lína valkostur, the innbyggður-í stjórn 963 01:10:52,970 --> 01:10:57,030 voru skrifuð til að virka sama og stjórn sem hafði verið í götunni, 964 01:10:57,030 --> 01:10:59,670 það er ólíklegt að þeir hefðu verið skrifuð svona 965 01:10:59,670 --> 01:11:01,720 ef stjórn hefði ekki verið skrifað fyrir braut. 966 01:11:01,720 --> 01:11:06,180 Svo hefur þetta aukaverkunum. Saga hennar hefur áhrif hér. 967 01:11:06,180 --> 01:11:08,380 Það eru möguleikar þarna. 968 01:11:14,280 --> 01:11:23,060 Það er einnig kostur skilgreint sem breytu í tcsh heitir echo_style. 969 01:11:23,060 --> 01:11:27,700 Það er ein af þessum breytum sem getur breytt því hvernig sem bergmáli verk. 970 01:11:27,700 --> 01:11:30,910 Það eru önnur mál sem þú geta framselja breytu 971 01:11:30,910 --> 01:11:36,290 að breytingar á þann hátt að skel rekstur, þ.mt innbyggður-í stjórn, það virkar. 972 01:11:36,290 --> 01:11:38,130 Það myndi ekki hafa áhrif á neitt annað 973 01:11:38,130 --> 01:11:40,640 síðan aðrar skipanir hafa ekki aðgang að skel breytur, 974 01:11:40,640 --> 01:11:42,090 aðeins umhverfið breytum. 975 01:11:42,090 --> 01:11:45,360 En skel aðgerðir geta lesið skel breytur. 976 01:11:45,360 --> 01:11:50,710 Það mun ekki vinna fyrir CNet. Það er aðeins tcsh. Það er einn af aukahlutum. 977 01:11:58,540 --> 01:12:04,620 Þáttun hefur röð þegar það metur metacharacters, 978 01:12:04,620 --> 01:12:08,140 þegar það metur breytur, samheiti, sögu tilvísanir. 979 01:12:08,140 --> 01:12:11,830 Það er einkum röð fyrir þessum hlutum. 980 01:12:11,830 --> 01:12:13,730 Ef það gerir það í tiltekinni röð 981 01:12:13,730 --> 01:12:16,080 og fær að eitthvað sem er tjáning á einhverskonar 982 01:12:16,080 --> 01:12:20,650 sem þegar hefur verið metið, mun það ekki meta það aftur. 983 01:12:20,650 --> 01:12:24,520 Ef það fær það, þá mun það bara fara á stafina. 984 01:12:24,520 --> 01:12:29,920 Þannig að ef mat á sumum tjáning eins stjórn skiptingu 985 01:12:29,920 --> 01:12:36,850 eða breyta eða hvað gefur tilefni til tjáningar 986 01:12:36,850 --> 01:12:39,240 sem þú vilt að aðrir komi metin, 987 01:12:39,240 --> 01:12:42,510 sem mun vinna aðeins ef að mat á sér stað síðar í röð. 988 01:12:42,510 --> 01:12:45,010 Ég vona ég að vera ljóst að það. 989 01:12:45,010 --> 01:12:50,460 Að þáttun röð, aðgerð í C-skel, 990 01:12:50,460 --> 01:12:56,490 er ekki það sama fyrir innbyggður-í stjórn eins og það er fyrir non-byggð-í stjórn. 991 01:12:56,490 --> 01:12:58,890 Ég er ekki viss um Bash þar. 992 01:12:58,890 --> 01:13:02,450 Til dæmis, ef skel breytu framleitt saga tilvísun, 993 01:13:02,450 --> 01:13:04,230 það myndi sennilega ekki fara aftur í sögunni. 994 01:13:04,230 --> 01:13:06,010 Það myndi bara fá upphrópunarmerki. 995 01:13:06,010 --> 01:13:08,840 Í raun getum við bara reyna það út núna. 996 01:13:09,720 --> 01:13:18,240 setja a = og við verðum að setja þetta í það. 997 01:13:30,690 --> 01:13:34,580 Ó, bíddu. Sorry. Ég gerði þetta í Bash. Mig langaði til að gera það hér. 998 01:13:53,470 --> 01:13:56,080 Sjá, svo það var ekki að meta að sagan tilvísun 999 01:13:56,080 --> 01:14:00,520 því það var komið langt fram yfir að benda á að meta sögu tjáning 1000 01:14:00,520 --> 01:14:02,720 þegar það var lagt mat á breytu. 1001 01:14:02,720 --> 01:14:05,550 Svo er það 1 áhrif þáttun. 1002 01:14:05,550 --> 01:14:08,760 Og aftur, eru byggð-í stjórn ekki gert á sama hátt. 1003 01:14:08,760 --> 01:14:11,230 Allt í lagi. Við skulum fara til the næstur einn hér. 1004 01:14:11,230 --> 01:14:16,060 Þetta er ætlað að vera 1 lína, en það er að gera það auðveldara að lesa. 1005 01:14:19,130 --> 01:14:21,530 Hvað þýðir það að gera? 1006 01:14:21,530 --> 01:14:28,640 Þú getur muna að við getum metið stjörnum sem skráarendingu Algildisstafa, 1007 01:14:28,640 --> 01:14:33,890 og það eru önnur Algildisstafa skráarnafni eins spurningarmerki og krappi tjáning. 1008 01:14:33,890 --> 01:14:39,000 Svona mat er kallað globbing. 1009 01:14:39,000 --> 01:14:46,290 setja noglob í upphafi þessa skipun segir gera það ekki. 1010 01:14:46,290 --> 01:14:53,370 afvalið noglob segir fara aftur til að gera það. 1011 01:14:53,370 --> 01:14:56,440 Athugaðu að setja glob myndi ekki hafa þessi áhrif. 1012 01:14:56,440 --> 01:15:00,800 Er í venjulegum tungumál, setja glob eða afvalið noglob virðist vera jafngilt, 1013 01:15:00,800 --> 01:15:03,290 en hér er það ekki. Það er afvalið noglob. 1014 01:15:05,120 --> 01:15:07,910 Nú tSetja. tSetja stóð fyrir flugstöðinni setja. 1015 01:15:07,910 --> 01:15:11,840 Það er ekki notað það oft núna, en áður en windowing kerfi varð laus 1016 01:15:11,840 --> 01:15:15,760 og þú hefðir einn flugstöðinni, þú gætir þurft að ákvarða tegund. 1017 01:15:15,760 --> 01:15:18,700 Og ef eitthvað var að koma yfir Ethernet eða af netinu, 1018 01:15:18,700 --> 01:15:21,120 þú might vilja til að segja að það er vt100. 1019 01:15:21,120 --> 01:15:26,630 VT100 er góður af a staðall í flugstöðinni fyrirtæki. Það kemur frá desember flugstöðinni. 1020 01:15:26,630 --> 01:15:35,270 Ef þú bara velja símanúmer - taka eftir því? Þetta gengur til baka a hátt, ha? 1021 01:15:35,270 --> 01:15:39,520 Þannig að ef við bara tSetja hérna, 1022 01:15:39,520 --> 01:15:45,250 ef ég bara tSetja, það er endurstilla flugstöðinni minn, en þú hefur ekki séð neitt. 1023 01:15:45,250 --> 01:15:47,340 Það var í raun ekki breyta neinu. 1024 01:15:47,340 --> 01:15:48,620 -S 1025 01:15:49,900 --> 01:15:51,480 Allt í lagi. 1026 01:15:51,480 --> 01:15:53,350 setenv TERM xterm-litur. 1027 01:15:53,350 --> 01:15:57,080 Við vitum nú þegar að hugtakið var sett þannig, svo sem ekki að breyta. 1028 01:15:57,080 --> 01:15:58,860 Það er hvernig við myndum vilja að gera það. 1029 01:15:58,860 --> 01:16:07,080 En taka eftir því að þessi skipun, tSetja-s, bara framleiðsla þessar skipanir. Það var ekki að keyra þá. 1030 01:16:07,080 --> 01:16:09,770 Það var ekki keyrt þessar skipanir, það framleiðsla þá. 1031 01:16:09,770 --> 01:16:13,650 Þannig að þetta er ætlað að framleiða skipanir sem mun þá vera keyrt. 1032 01:16:13,650 --> 01:16:16,360 Þú manst skipunina í þessi skrá sem ég sýndi bara þú hefðir Q í það. 1033 01:16:16,360 --> 01:16:18,910 Svo skulum gera það. 1034 01:16:18,910 --> 01:16:23,750 Q bælir smá framleiðsla, en það skiptir ekki máli hér, eins og þú sérð. 1035 01:16:23,750 --> 01:16:27,980 Ég ætla bara að gera það til að sýna þér að það skipti ekki máli. 1036 01:16:27,980 --> 01:16:31,870 Þetta er í backquote setningafræði. 1037 01:16:31,870 --> 01:16:35,340 Athugaðu að backquote hér, backquote hér. 1038 01:16:35,340 --> 01:16:37,680 Ég er að sleppa þessum hlutum hér. 1039 01:16:37,680 --> 01:16:39,570 Þetta eru tilfelli segja það hvað ég á að gera 1040 01:16:39,570 --> 01:16:42,050 um er að ræða tilteknar tegundir af skautanna - 1041 01:16:42,050 --> 01:16:45,400 Ethernet, net, velja símanúmer, hvað hefur þú. 1042 01:16:45,400 --> 01:16:48,050 Það skiptir ekki máli hér því við erum í raun ekki að gera eitthvað af þessum hlutum. 1043 01:16:48,050 --> 01:16:49,720 Ég ætla bara að sýna skipunina. 1044 01:16:49,720 --> 01:16:55,170 Ef ég gera þetta með backquote, hvað er ég að fara að fá? 1045 01:16:55,170 --> 01:17:00,210 Einnig taka eftir hér að þetta ma sett noglob og afvalið noglob, 1046 01:17:00,210 --> 01:17:02,630 þannig að þeir eru nú ofaukið í skilgreiningunni. 1047 01:17:02,630 --> 01:17:05,380 Það var ekki alltaf satt, en nú eru þeir með í þessari stjórn. 1048 01:17:05,380 --> 01:17:08,890 En við skulum sjá hvað gerist ef ég geri það 1049 01:17:08,890 --> 01:17:12,570 og fara til the byrjun af the lína við stjórna og ég geri það. 1050 01:17:14,380 --> 01:17:18,040 Allt í lagi, setja: Skipun fannst ekki. Það er góður af skrýtið, er það ekki? 1051 01:17:18,040 --> 01:17:20,570 sett er vel þekkt stjórn. Það er hluti af skel. 1052 01:17:20,570 --> 01:17:24,040 setja: Skipun fannst ekki? Hvers vegna er það? 1053 01:17:24,040 --> 01:17:26,790 Hmm. Jæja, við skulum hugsa um þetta. 1054 01:17:26,790 --> 01:17:31,100 Það er að keyra backquote stjórn skiptingu, 1055 01:17:31,100 --> 01:17:37,430 og sem á sér stað á ákveðinn hluta af röð þáttun stjórn. 1056 01:17:37,430 --> 01:17:40,360 setja er a innbyggður-í stjórn. 1057 01:17:40,360 --> 01:17:43,900 Svo eftir þann tíma sem það gerir þessi stjórn skiptingu, 1058 01:17:43,900 --> 01:17:48,280 það er þegar komist yfir benda á að skilgreina innbyggður-í stjórn. 1059 01:17:48,280 --> 01:17:51,900 Svo það meðhöndlar setja eins og ef það væri stjórn í the gangstígur. 1060 01:17:51,900 --> 01:17:55,440 Óþarfur að segja, er það ekki að finna það og þú færð villu. 1061 01:17:55,440 --> 01:17:59,300 Jæja. Það er dæmi um þáttun röð. 1062 01:17:59,300 --> 01:18:01,460 Og hvað gerum við um það? 1063 01:18:01,460 --> 01:18:04,800 Taka þetta mjög áhugavert skipun hér, legg. 1064 01:18:04,800 --> 01:18:06,530 Ég velti því hvað það gerir. 1065 01:18:06,530 --> 01:18:08,760 Ef þú horfir á handbók - og við skulum gera bara það 1066 01:18:08,760 --> 01:18:12,000 til að sýna hvernig ruglingslegt þessar handbækur eru - 1067 01:18:12,000 --> 01:18:19,400 maður tcsh, rugla handbók, finna hluti hér er ekki auðvelt heldur. 1068 01:18:19,400 --> 01:18:31,850 Hér förum, meta Arg, svo við getum haft 1 eða fleiri rök 1069 01:18:31,850 --> 01:18:34,090 og það er listi af hlutum þar. 1070 01:18:34,090 --> 01:18:37,730 Meðhöndlar rök sem inntak í skel 1071 01:18:37,730 --> 01:18:43,600 og keyrir sem af þessu leiðir skipanir í samhengi við núverandi skel. 1072 01:18:43,600 --> 01:18:46,900 Þetta er venjulega notað til að framkvæma skipanir búnir til sem afleiðing af stjórn 1073 01:18:46,900 --> 01:18:51,310 eða breytilega skipta því þáttun á sér stað áður en þessi skipti. 1074 01:18:51,310 --> 01:18:52,580 Mjög gott. 1075 01:18:52,580 --> 01:18:54,740 Og hér þeir vísa jafnvel til tSetja stjórn um sýnishorn notkun 1076 01:18:54,740 --> 01:18:57,700 eins og sá sem ég sýndi bara þér. 1077 01:18:57,700 --> 01:19:00,440 Nú þarf ég að fá gluggann aftur til góður staður. 1078 01:19:03,150 --> 01:19:07,800 Skulum fá hérna og við munum sjá að meta er notað rétt fyrir það. 1079 01:19:07,800 --> 01:19:14,010 Svo við skulum sjá hvað gerist ef við setjum - hér við fara upp með örvarnar til þessi stjórn 1080 01:19:14,010 --> 01:19:20,940 og stjórna til the byrjun, legg. 1081 01:19:20,940 --> 01:19:22,850 Allt í lagi, svo það virkar. 1082 01:19:22,850 --> 01:19:26,440 Þegar þú gerir legg, það tekur það sem kemur á eftir henni og gerir það að skipun. 1083 01:19:26,440 --> 01:19:29,460 Þetta gerir þér kleift að í raun flokka það tvisvar. 1084 01:19:29,460 --> 01:19:33,710 Í kaflanum hér keyrir þessa skipun inni í backquotes, 1085 01:19:33,710 --> 01:19:36,210 fær framleiðsla. 1086 01:19:36,210 --> 01:19:42,850 Output er ætlast til að keyra eins og þeim skipunum hér eins og þessir 1087 01:19:42,850 --> 01:19:45,890 á þessum eina og þessu. 1088 01:19:45,890 --> 01:19:50,100 Svo þessir skipanir eru nú hér í þessari röð, 1089 01:19:50,100 --> 01:19:58,950 en þetta eru byggð-í skipunum og það getur ekki fá þær strax. 1090 01:19:58,950 --> 01:20:06,440 Svo við förum að meta, meta velja það upp, byrjar allt hlutinn aftur og aftur, og það virkar. 1091 01:20:06,440 --> 01:20:18,460 Dæmi bæði backquoting, meta, þáttun, afleiðingar þáttun, 1092 01:20:18,460 --> 01:20:21,910 og skipun sem er líklega mjög lítið notað til þín nú á dögum. 1093 01:20:21,910 --> 01:20:25,540 Allt í lagi. Allt í lagi, umask. 1094 01:20:25,540 --> 01:20:32,160 Við skulum líta á þessa stjórn hér, umask 022. Ég velti því hvað það gerir. 1095 01:20:32,160 --> 01:20:38,420 Við skulum bara slá umask með ekkert eftir það. 22. Allt í lagi. 1096 01:20:38,420 --> 01:20:44,350 022 og gera það aftur. 1097 01:20:44,350 --> 01:20:48,580 Eins og þú might hafa giska, umask án rök segir þú the straumur gríma; 1098 01:20:48,580 --> 01:20:51,760 umask með rök sem gerir það að, en það var það sem ég hafði nú þegar. 1099 01:20:51,760 --> 01:20:53,800 Hvað þýðir 022 meina? 1100 01:21:01,650 --> 01:21:07,080 Þetta eru hér vernd fyrir a skrá. 1101 01:21:07,080 --> 01:21:11,440 Þeir ákveða sem er leyft að lesa eða skrifa eða keyrt skrána. 1102 01:21:11,440 --> 01:21:16,560 Vernd eru líka kölluð heimildir. 1103 01:21:16,560 --> 01:21:21,390 R stendur fyrir að lesa, W fyrir skrifa, 1104 01:21:21,390 --> 01:21:25,500 og x, sem er ekki til staðar þar, stendur fyrir framkvæma. 1105 01:21:25,500 --> 01:21:27,260 Það eru 3 flokkar þar. 1106 01:21:27,260 --> 01:21:33,540 Síðustu 3 þættir eru í flokki notanda. Þeir eiga við mig, notandann. 1107 01:21:33,540 --> 01:21:36,870 Þessir 3 hér eiga við hópinn. 1108 01:21:36,870 --> 01:21:41,590 Skráin tilheyrir 1 hópi, notandi getur tilheyrt mörgum hópum, 1109 01:21:41,590 --> 01:21:47,150 en ef notandinn er í hópnum sem þessa skrá tilheyrir, 1110 01:21:47,150 --> 01:21:51,090 þá eru þessir vernd eiga við hann ef hann er ekki notandi. 1111 01:21:51,090 --> 01:21:54,230 Og þetta er allir aðrir. 1112 01:21:55,540 --> 01:21:57,690 Þessir flokkar eru ósamrýmanlegir. 1113 01:21:57,690 --> 01:21:59,750 Notandinn vernd gilda honum, 1114 01:21:59,750 --> 01:22:03,780 vernd sem hópur um meðlimi hópsins, öðrum en notanda, 1115 01:22:03,780 --> 01:22:08,110 og önnur vernd gilda aðeins um aðra en notandann og meðlimir hópsins. 1116 01:22:08,110 --> 01:22:12,320 Ef það er r eða AW eða x, þá þýðir það að vernd er veitt. 1117 01:22:12,320 --> 01:22:13,950 Ef það er bandstrik, þá þýðir það að það er ekki. 1118 01:22:13,950 --> 01:22:16,690 Það reyndar eru önnur atriði sem hægt er að setja hér auki þessir, 1119 01:22:16,690 --> 01:22:18,350 sem ég mun ekki fá inn núna. 1120 01:22:18,350 --> 01:22:24,450 The umask skilgreinir sjálfgefið fyrir skrár sem þú býrð til. 1121 01:22:24,450 --> 01:22:28,580 Og eins og grímu, í grundvallaratriðum, segir að það bita sem þú ekki sett. 1122 01:22:28,580 --> 01:22:30,450 Hvernig hefur þetta orðið bits? 1123 01:22:30,450 --> 01:22:33,240 Ef þú hugsa um hvert þessara sem áttundakerfi tala, 1124 01:22:33,240 --> 01:22:42,120 þetta er 1S hluti, þá er þetta 2s, þá er þetta 4S. 1125 01:22:42,120 --> 01:22:45,840 Svo 0 með 7 1126 01:22:45,840 --> 01:22:51,770 mun lýsa hvað samsetningu r er, W 'og X' þú hafa fyrir þessum 3 1127 01:22:51,770 --> 01:22:53,710 og þá svipaður fjöldi fyrir þetta og þá fyrir þetta. 1128 01:22:53,710 --> 01:23:12,030 Svo 022 þýðir 0 fyrir aðra, 2 fyrir hópinn, 2 fyrir notandann. 1129 01:23:12,030 --> 01:23:15,870 En þetta er gríma. Gríma er það sem þú þarft ekki. 1130 01:23:19,380 --> 01:23:20,610 Fyrirgefðu. Ég bara gaf þér hlutina í rangri röð. 1131 01:23:20,610 --> 01:23:25,620 Það er fyrsta 3. Þessir 3 eru, geta þessar 3 er sá hópur, eru þessar 3 hinn. 1132 01:23:25,620 --> 01:23:27,970 Því miður ég gaf þér þetta í rangri röð. 1133 01:23:27,970 --> 01:23:31,910 The 0, sem er fyrsta af þeim, ekki sýna gildi, 1134 01:23:31,910 --> 01:23:35,430 en ef númerið er ekki þar, það er 0. 1135 01:23:35,430 --> 01:23:38,370 Það þýðir Allir 3 af þessum yrði leyft. 1136 01:23:38,370 --> 01:23:41,550 Takið eftir að í þessu tiltekna einn, x er ekki leyft. 1137 01:23:41,550 --> 01:23:44,090 Ástæðan er sú að skel er fær um að ákvarða 1138 01:23:44,090 --> 01:23:46,260 hvort skrá ætti að framkvæma eða ekki. 1139 01:23:46,260 --> 01:23:49,800 Þar sem þetta er ekki executable skrá, gerði það ekki láta x. 1140 01:23:49,800 --> 01:23:54,000 The 2 að skrifa leyfi, annar flokkur hér, 1141 01:23:54,000 --> 01:23:56,500 einn í miðjunni, er hafnað. 1142 01:23:56,500 --> 01:23:58,500 Svo aftur, eru þessir hlutir sem hún hafnað. 1143 01:23:58,500 --> 01:24:02,080 Jæja, x er leyft en það er ekki hér vegna þess að það er ekki executable 1144 01:24:02,080 --> 01:24:04,260 og tilsvarandi fyrir aðra. 1145 01:24:04,260 --> 01:24:08,880 Svo er að sameiginleg umask. 1146 01:24:08,880 --> 01:24:14,630 Önnur algeng einn er 700 - Gefðu þig allt og enginn annar neitt. 1147 01:24:14,630 --> 01:24:17,040 Og það eru aðrir möguleikar. 1148 01:24:21,340 --> 01:24:27,110 Ég fer aftur til þess tíma. Notkun sögu sem ég get leitað til baka fyrir það, lwh að þar. 1149 01:24:27,110 --> 01:24:30,210 Allt í lagi. Svo hér eru þessir skeljar. 1150 01:24:30,210 --> 01:24:36,020 Bash, eigandinn sem er kerfi reikning, getur gert allt. 1151 01:24:36,020 --> 01:24:41,210 Hópur og allir aðrir geta ekki lesið eða framkvæma en ekki skrifa. 1152 01:24:41,210 --> 01:24:44,570 Þetta er ekki einu sinni að leyfa eigandanum að skrifa það. 1153 01:24:44,570 --> 01:24:46,460 Ef eigandi vildi skrifa það, kerfið reikning, 1154 01:24:46,460 --> 01:24:48,020 hann þyrfti að breyta vörn fyrst. 1155 01:24:48,020 --> 01:24:53,940 En aftur, umask stillir sjálfgefna með því að gríma hana, 1156 01:24:53,940 --> 01:24:57,160 með því að tilgreina bita sem verður ekki sett. 1157 01:24:57,160 --> 01:25:04,380 Þetta er yfirleitt í einu af frumstilling skrá þína, sem er. Cshrc fyrir C-skel 1158 01:25:04,380 --> 01:25:07,500 eða. uppsetningu fyrir Bourne-gerð skeljar. 1159 01:25:07,500 --> 01:25:12,520 Það getur verið annars staðar líka ef það eru aðrar frumstilling skrár í the kerfi. 1160 01:25:12,520 --> 01:25:14,610 Engu að síður, það er umask. 1161 01:25:14,610 --> 01:25:18,180 Það er eitthvað svona skrýtið hér, 1162 01:25:18,180 --> 01:25:22,800 og það er, hvers vegna er það einn stjórn fyrir þetta? 1163 01:25:22,800 --> 01:25:28,690 Ef ég væri að skrifa þetta, mundi ég gera það breytu, umask = eitthvert gildi. 1164 01:25:28,690 --> 01:25:31,100 Hvers vegna er það allt stjórn bara í þessum tilgangi? 1165 01:25:31,100 --> 01:25:34,560 Ástæðan er þetta bara fer aftur til uppruna Unix. 1166 01:25:34,560 --> 01:25:41,050 Unix var bara Forritunarverkefni hjá Bell Labs í 1970. 1167 01:25:41,050 --> 01:25:42,610 Fólk fékk bara saman að áætluninni. 1168 01:25:42,610 --> 01:25:45,290 Þeir ætluðu aldrei það að verða alheims stýrikerfi. 1169 01:25:45,290 --> 01:25:47,250 Mismunandi fólk skrifaði mismunandi hlutum án þess að hugsa mjög mikið 1170 01:25:47,250 --> 01:25:49,790 um hvernig þeir ætluðu að nota - frekar sketchy. 1171 01:25:49,790 --> 01:25:53,290 Og það kom saman eins og þessi, og það er enn eins og að sumu leyti. 1172 01:25:53,290 --> 01:25:57,930 Svo kemur fram að sögu, og það eru enn þessar ósamræmi og stakur þættir í því. 1173 01:25:57,930 --> 01:26:00,750 Allt í lagi. Næsta einn hér. 1174 01:26:08,170 --> 01:26:11,000 Eins og ég skrifaði áðan, C-skel er í raun ekki notað mjög mikið fyrir forritun, 1175 01:26:11,000 --> 01:26:12,420 Þó að það getur verið. 1176 01:26:12,420 --> 01:26:15,080 Það keyrir hægar, aftur málamiðlun milli gagnvirka notkun, 1177 01:26:15,080 --> 01:26:17,820 sem hefur meiri vinnslu þátt en hraða, 1178 01:26:17,820 --> 01:26:20,710 sem getur gert án vinnslu. 1179 01:26:20,710 --> 01:26:28,320 Auka möguleika bætt við Bourne skel með Korn og Bourne-aftur skeljar 1180 01:26:28,320 --> 01:26:32,120 virðist ekki hægja þá niður, og ég veit ekki af hverju það er. 1181 01:26:32,120 --> 01:26:36,310 Það gæti bara verið betra forritun, en ég er ekki í aðstöðu til að vita. 1182 01:26:36,310 --> 01:26:40,420 Speed ​​hér í raun er ekki svo stór samningur, en það er getið. 1183 01:26:40,420 --> 01:26:43,690 Ástæðan er sú að skel forskriftir raunverulega fá nokkuð hratt. 1184 01:26:43,690 --> 01:26:46,450 Ef það er mikið af skipunum eins og í calculational program, 1185 01:26:46,450 --> 01:26:49,110 Þú myndi sennilega ekki gera það í skel handrit. 1186 01:26:49,110 --> 01:26:51,450 Starfsemi eru nokkuð einfalt og augljóst. 1187 01:26:51,450 --> 01:26:53,960 Þeir sem ég hef upplifað sem eru of hægur 1188 01:26:53,960 --> 01:26:57,110 falið endurteknar umsóknir hægur skipunum. 1189 01:26:57,110 --> 01:27:00,480 Fyrr ég nefndi straum ritstjóri sed. Sem stjórn er hægur. 1190 01:27:00,480 --> 01:27:03,760 Ef þú framkvæma sed mörgum sinnum, munt þú færð hægur handrit, en það er ekki skel sem er hægur. 1191 01:27:03,760 --> 01:27:07,920 Keyra það í Bourne skel verður ekki mikið hraðar en að keyra hann í C-skel, 1192 01:27:07,920 --> 01:27:10,070 þó það er kannski nokkur kostur þar. 1193 01:27:10,070 --> 01:27:12,760 The viðbótar getu forritun, á hinn bóginn, 1194 01:27:12,760 --> 01:27:17,920 eru verulegar ástæður af hverju þú myndir nota Bourne-gerð skeljar. 1195 01:27:17,920 --> 01:27:21,390 C-skel hefur stakur eiginleikum við það - 1196 01:27:21,390 --> 01:27:25,250 sú staðreynd að þú veist ekki hvort breytu er skel breytu eða umhverfi breyta. 1197 01:27:25,250 --> 01:27:27,440 Það getur verið mjög ruglingslegt. 1198 01:27:27,440 --> 01:27:32,170 Það er ekki svo auðvelt að skrifa 1199 01:27:32,170 --> 01:27:35,930 bara byggt á reynslu þinni af forritun í öðrum tungumálum. 1200 01:27:35,930 --> 01:27:41,350 Ég held að þú gætir fundið Bourne-gerð skeljar meira í samræmi við reynslu þína. 1201 01:27:43,730 --> 01:27:49,270 Sumir forskriftir, þó getur verið þúsundir línur á lengd. 1202 01:27:49,270 --> 01:27:52,450 Þeir sem ég hef séð eru notuð fyrir pjatla stýrikerfi. 1203 01:27:52,450 --> 01:27:55,450 Þeir geta keyrt mjög hægt, en þú verðir ekki þá mjög oft. 1204 01:27:55,450 --> 01:27:57,180 Það er aðeins þegar þú ert að gera pjatla, 1205 01:27:57,180 --> 01:27:59,450 og það er bara kerfið framkvæmdastjóri, sem gerir þá hluti, 1206 01:27:59,450 --> 01:28:01,840 svo það er í raun ekki mikið um málið. 1207 01:28:01,840 --> 01:28:06,980 Þeir sem eru nokkur hundruð línur lengi raunverulega framkvæma nokkuð fljótt. 1208 01:28:06,980 --> 01:28:10,540 Að nefna þetta hér, hvað eru þeir aukahluti? 1209 01:28:10,540 --> 01:28:13,170 Ég hef þegar nefnt nokkur af þeim - fylki, útreikningar, 1210 01:28:13,170 --> 01:28:20,540 The $ () segð fyrir útreikninga í Bash skel, 1211 01:28:20,540 --> 01:28:23,050 Önnur tegund af stjórn skipti. 1212 01:28:23,050 --> 01:28:25,360 Það eru mismunandi tegundir af próf skipanir 1213 01:28:25,360 --> 01:28:29,350 sem þú getur gert skilyrðissetningar á tilvist skrá eða annars. 1214 01:28:29,350 --> 01:28:34,790 Endast hér, þessi skipun hér. 1215 01:28:34,790 --> 01:28:38,480 Hvað þýðir þetta að gera, og hvers vegna vildi einhver að nota það? 1216 01:28:51,170 --> 01:28:52,990 printenv variablename. 1217 01:28:52,990 --> 01:28:56,130 Við vitum hvað printenv gerir. Það segir okkur gildi breytu. 1218 01:28:56,130 --> 01:29:00,850 Og printenv variablename mun ekki segja okkur mjög mikið vegna þess að það er engin sem breytu. 1219 01:29:03,550 --> 01:29:05,120 Blank. 1220 01:29:05,120 --> 01:29:08,440 En við skulum gefa það eitthvað mikilvægt. 1221 01:29:13,420 --> 01:29:16,800 Það er ekki þar heldur. Allt í lagi. Ég held ég skilgreint það aldrei. 1222 01:29:16,800 --> 01:29:18,020 Skulum athuga bara umhverfið. 1223 01:29:18,020 --> 01:29:20,900 Þetta er annar stjórn sem þú getur skoða umhverfið. 1224 01:29:20,900 --> 01:29:24,470 Það er gamall góður ritstjóri, sá sem við sáum áður. 1225 01:29:42,360 --> 01:29:44,120 Hvað þýðir það að gera? 1226 01:29:44,120 --> 01:29:48,050 Hér höfum við backquote tjáningu. 1227 01:29:48,050 --> 01:29:50,370 Mundu þetta er C-skel. 1228 01:29:50,370 --> 01:29:54,850 Svo printenv Editor mun gefa okkur a gildi af ritstjóri. Það er vi. 1229 01:29:54,850 --> 01:29:59,790 Og þá mun það setja þessi gildi til breytu A, stillta stjórn. 1230 01:29:59,790 --> 01:30:02,860 Svo nú ef ég echo $ a, fæ ég vi. 1231 01:30:02,860 --> 01:30:05,850 Það virðist ekki hræðilega gagnlegur. 1232 01:30:05,850 --> 01:30:08,080 Þó það hjartarskinn raunverulega hafa tilgang. 1233 01:30:08,080 --> 01:30:12,260 Þar sem við vitum ekki hvort breytu er skel breytu eða umhverfisbreyta 1234 01:30:12,260 --> 01:30:16,280 með því að nota dollaramerki mat setningafræði, við getum notað printenv 1235 01:30:16,280 --> 01:30:19,460 að ganga úr skugga um að það er umhverfi breyta. 1236 01:30:19,460 --> 01:30:22,550 Þannig að ef það væri skel breytilegum ritstjóri, þetta hefði ekki fengið það. 1237 01:30:22,550 --> 01:30:25,640 Þetta virkar aðeins með umhverfisbreytunni. 1238 01:30:25,640 --> 01:30:28,370 Ef það væri skel breytilegir og ég vildi gildi þess, 1239 01:30:28,370 --> 01:30:29,980 Ég myndi þurfa að finna einhverja aðra leið til að gera það. 1240 01:30:29,980 --> 01:30:33,530 Ein leið til að gera það væri með því að gera setja og lagnir. 1241 01:30:33,530 --> 01:30:36,130 Þetta er einn af the metacharacters, sértákn. 1242 01:30:36,130 --> 01:30:38,370 Það sendir úttak setja eitthvað annað. 1243 01:30:38,370 --> 01:30:40,650 Við skulum sjá hvað við gætum fundið það. 1244 01:30:40,650 --> 01:30:49,340 Ekkert. Allt í lagi. Við skulum sjá bara hvað er þarna öll saman. 1245 01:30:49,340 --> 01:30:53,580 Það var echo_style, sá ég nefndi áður. Jæja, við skulum gera það. 1246 01:31:02,460 --> 01:31:06,230 Man ég nefndi áður, echo_style 1247 01:31:06,230 --> 01:31:08,410 ákvarðar hvernig echo stjórn mun keyra. 1248 01:31:08,410 --> 01:31:10,940 BSD stendur fyrir Berkeley Standard Distribution. 1249 01:31:10,940 --> 01:31:13,200 Þetta er Berkeley Unix frá 1970. 1250 01:31:13,200 --> 01:31:16,630 Það er ein af þeim leiðum sem echo geta keyrt. 1251 01:31:16,630 --> 01:31:22,310 Setja echo_style að þetta gildi á TC-skel mun valda echo að haga sér þannig. 1252 01:31:22,310 --> 01:31:27,670 Svo sett gerir það, en setja aðeins fær skel breytur. 1253 01:31:27,670 --> 01:31:35,430 Það myndi ekki finna ritstjóra, sem er ekki í skel breytu. 1254 01:31:36,870 --> 01:31:38,050 Ekkert. 1255 01:31:38,050 --> 01:31:39,660 Svo er það ein leið til að greina þau. 1256 01:31:39,660 --> 01:31:42,000 Heldur sú staðreynd að þú þarft að fara í gegnum sumir skrýtinn stjórn svona 1257 01:31:42,000 --> 01:31:45,500 að greina á milli skel breytur eða umhverfið breytum 1258 01:31:45,500 --> 01:31:49,970 sýnir þá tegund af óhagkvæm eðli C-skel fyrir ákveðnum tilgangi. 1259 01:31:52,290 --> 01:31:57,960 Og nú, síðasta og kannski síst, þetta er maðurinn síður. 1260 01:31:57,960 --> 01:32:03,190 Þeir af hver þú mega vita, maðurinn er skipunin stytting á handbók. 1261 01:32:03,190 --> 01:32:08,610 Man síðum fyrir skeljar er erfitt að lesa. Þeir eru mjög lengi. 1262 01:32:08,610 --> 01:32:14,060 Þeir eru skipulögð á þann hátt sem getur gert það erfitt að finna það sem þú ert að leita að. 1263 01:32:14,060 --> 01:32:15,980 Þannig að ef þú ert að leita að einhverju með tilgang, 1264 01:32:15,980 --> 01:32:20,050 þú getur ekki vitað hvort að tilgangur er skel breytu eða eitthvað annað, 1265 01:32:20,050 --> 01:32:21,630 svo þú getur ekki vita hvar á að leita að því. 1266 01:32:21,630 --> 01:32:25,030 Þú geta leita að ýmsum strengi, en strengirnir eru oft endurtekin. 1267 01:32:25,030 --> 01:32:27,640 Svo það er almennt erfitt að lesa. 1268 01:32:27,640 --> 01:32:33,810 Við leit bara á TC-skel maður síðunni smá áður að finna eval stjórn. 1269 01:32:33,810 --> 01:32:36,610 Sumir hlutir fara hraðar. 1270 01:32:36,610 --> 01:32:38,860 Ein aðferð er að leita að streng. 1271 01:32:38,860 --> 01:32:40,360 Þú getur notað Friðþjófur. 1272 01:32:40,360 --> 01:32:49,080 Friðþjófur hefur skástrikinu til að leita að stjórn eða streng inni símboði aðgerð. 1273 01:32:49,080 --> 01:32:52,830 Man sjálfgefið vilja nota pagers, annað hvort að vera meira eða minna. 1274 01:32:52,830 --> 01:32:56,560 Ég veit ekki hvort þú ert kunnuglegur með þeim, en þeir geta sýna skrá smátt og smátt. 1275 01:32:56,560 --> 01:33:00,550 Ég hef verið að nota minna til að birta þessar tilteknu skrár sem við höfum fengið hér. 1276 01:33:00,550 --> 01:33:03,300 Hægt er að leita þarna inni. 1277 01:33:03,300 --> 01:33:04,880 Þú getur prófað að nota mismunandi strengi leit. 1278 01:33:04,880 --> 01:33:08,420 Einnig man síðum í mismunandi stýrikerfum mega ekki vera það sama. 1279 01:33:08,420 --> 01:33:11,130 Þeir geta verið aðskilin síðum fyrir CNet og tcsh. 1280 01:33:11,130 --> 01:33:14,500 Þeir eru eru ekki á Mac, en þeir gætu verið ef þeir eru aðskilin skipanir. 1281 01:33:14,500 --> 01:33:19,000 Ef SH er í raun ekki kalla Bash, það myndi sennilega vera sérstakt maður síðu. 1282 01:33:19,000 --> 01:33:25,820 Sum kerfi hafa sérstakar síður maður bara fyrir C-skel innbyggður-í stjórn. 1283 01:33:25,820 --> 01:33:30,250 Stundum ef þú vilt lesa lýsingu af innbyggður-í stjórn 1284 01:33:30,250 --> 01:33:35,350 það er líka í götunni, eins og bergmál, þú þarft að lesa maður síðu á þeirri stjórn á echo 1285 01:33:35,350 --> 01:33:37,610 til að ákvarða hvernig það mun virka eins og a innbyggður-í stjórn 1286 01:33:37,610 --> 01:33:39,760 jafnvel ef þú ert ekki að hringja í innbyggða stjórn. 1287 01:33:41,630 --> 01:33:46,090 Það er galli í stýrikerfi almennt, ekki aðeins fyrir skeljar, 1288 01:33:46,090 --> 01:33:50,710 þó að skeljar einkum man síðum er alveg löng, 1289 01:33:50,710 --> 01:33:56,180 ma vegna þess að þeir bættir gagnlegur lögun til þeirra, sem kunna að vera jákvæð. 1290 01:33:56,180 --> 01:34:00,290 Allt í lagi. Eru einhverjar spurningar? Hvaða efni sem þú vilt að koma upp? 1291 01:34:00,290 --> 01:34:03,390 Nokkuð viðeigandi hér? 1292 01:34:04,540 --> 01:34:07,100 Jæja, það hefur verið mjög gaman að tala við ykkur öllum. 1293 01:34:07,100 --> 01:34:09,690 Ég vona að þú fékk eitthvað út úr þessari ráðstefnu 1294 01:34:09,690 --> 01:34:13,080 sem mun vera gagnlegt fyrir þig í framtíðinni viðleitni þína. 1295 01:34:17,330 --> 01:34:19,000 [CS50.TV]