[Muzikos grojimo] Doug LLOYD: Gerai. Taigi pakalbėkime apie tai, kaip naudoti Linux "komandinę eilutę. Dabar, CS50 IDE, arba Faktas, net CS50 prietaisas, Jei esate susipažinę su tuo, ar jūs vartojate senesnę CS50, yra debesis pagrįstas mašina kuris veikia Ubuntu, kuris yra vienas iš daugelio skonio Linux operacinė sistema. Linux operacinė sistema yra išrinktasis programuotojų, nes tai tik aušintuvas, tiesa? Daugelis šiuolaikinių Linux distribucijos turi grafines vartotojo sąsajas, kurią mes taip pat vadiname GUI, G-U-i, kad leidžia lengvai pelės navigacijos, kurios jūs tikriausiai susipažinęs su, jei esate "Windows" arba "Mac vartotojas, judėti pele, dukart paspaudę ant piktogramos ir pan. Vis nors, kaip programuotojas, ir nors IDE yra į galimybę ką nors grafinė vartotojo Daiktai Naršyti ir vilkdami ir visa tai, jūs vis dar naudojate savo terminalo langą gana dažnai. Ir jūs galite padaryti daug iš tas pačias užduotis, kad jūs galite daryti su pele su klaviatūra komandas. Ir mes ketiname kalbėti šiek tiek apie tai, ką kai kurie iš šių komandų yra dabar. Dabar šie komandos gali būti naudojamos bet kurioje Unix operacinė sistema, kuri apima Linux, bet taip pat apima Mac OS. Jei atverti terminalo jūsų Mac, Jūs galite naudoti šiuos tikslius komandas. Langai taip pat turi Command Greitas, tačiau kai kurie iš komandų šiek tiek skiriasi, todėl ji neturi faktiškai dirba, nes Windows yra ne UNIX sistema. Taigi leiskite pažvelgti į kai išvaizdą Šių Linux komandas. Pirmasis vienas, kad jums tikriausiai naudoti gana daug yra Ls. Štai mažosiomis L, po to mažosiomis raidėmis S, kuris yra trumpas sąrašas. Ir ką sąrašo komanda daro tai suteikia jums visų failų skaitymas ir aplankai Jūsų einamojo katalogo. Taigi jūs galite pamatyti viską galite gauti iš kur jūs šiuo metu esate. Taigi aš atvėrė čia į CS50 IDE. Ir aš ruošiuosi Zoom-in A antra, suteikti jums arčiau, bet čia platus vaizdas kas IDE atrodo. Kairėje pusėje, jūs galite pamatyti turime failas medis, jūs tikriausiai susipažinęs su dukart spustelėdami, ir failus ir aplankus, ir visa tai stuff. Taigi, kad vis dar ten į CS50 prietaisu. Tuo į viršų centre, kur esate ketina rašyti savo kodą, kai Paspaudus ant failo. Ir apačioje, mes turi terminalo langą, kuris yra, kur mes galime vykdyti Šie darbiniai komandas. Aš ruošiuosi Zoom-in ir per galvą čia, tiesiog parodyti jums, kad, tiesą sakant, aš galiu paspauskite ant šių failų ir aplankų. Taigi aišku, kur aš šiuo metu esu, turiu du aplankai, vadinami pset0 ir pset1, ir trys failai, vienas vadinamas Sveiki, vienas vadinamas hello.c, ir vienas vadinamas hello.txt. Taigi leiskite žemyn į terminalą langų ir gauti arčiau. Taigi mes tiesiog kalbėjomės, vėlgi, apie Faktas, kad mes turime tris failus ir du aplankai einamojo katalogo. Jei aš tipo LS, kuris vėl yra komanda į sąrašą dabartinės turinys katalogas, tada aš paspauskite Enter pažiūrėkite, ką aš matau, labas, hello.c, hello.txt, pset0 ir pset1. pset0 ir pset1 yra mėlynos spalvos, nurodyti jums, kad tie, kurie katalogai kad galėtume pereiti į. Ir mes pramokti tiek apie tai, kaip naršyti į katalogus per minutę. Ir kiekvienas kitas dalykas yra juodos spalvos, jei tai tekstinis failas arba kodo failą, ir žalia, jei tai vykdomąjį failą. Taip aiškiai, tai reiškia, kad I gali paleisti programą ", labas. Štai ką žalia vienas ten reiškia. Bet iš esmės, įvesdami ls komanda leido man pažvelgti į viską, kas egzistuoja mano einamojo katalogo, kuri atitinka tai, ką mes matome čia, grafinis ekranas iš tos pačios. Kitas komandą jums tikriausiai naudoti gana didelis yra CD, mažosiomis raidėmis c, mažosiomis raidėmis D, kuris yra trumpas kaitos kataloge. Tai leidžia mums daryti tai, kas man buvo kalbame apie sekundę prieš kurį yra naršyti tarp Katalogai komandų linija, o ne dukart spragtelint aplankus. Taigi, jei mes tipo cd ir tada iš katalogo pavadinimą, mes galime gauti į tą katalogą. Kaip panaikinti, žinau, kad pavadinimas iš einamojo katalogo visada taškų, o kataloge vardas vienas lygis aukščiau, kur mes esame dabar kad yra į aplanką vardas kurį mūsų aplankas, taškas, dot-- arba kurioje mūsų aplankas, yra taškų, tašku. Ir jei jūs kada nors įdomu Jūsų kataloge vardas, galite įvesti Darbuotojų komandiravimo direktyvą, kuri stovi už šio darbo kataloge. Mes pažvelgti į visa tai ir dabar, pozicijoje atgal į CS50 IDE. Taigi, aš atgal į mano darbo vietą dabar. Ir aš Zoom-vėl ant terminalas, todėl mes galime pažvelgti ne juda per IDE. Taigi, aš ruošiuosi sąrašą turinys mano kataloge vėl, tik reground Visiems mums, kur mes esame. Taigi, jei aš tipo ls, kuris yra sąraše vėl, Matau, kad aš galiu gauti pset0 ir pset1. Tai yra katalogai Galiu gauti iš čia. Žinau, kad dėl IDE suteikia man iki dažyti juos mėlyna raktas. Tarkime, kad aš noriu patekti į mano pset1 kataloge nes aš dirbu problema Set 1. Galiu tipo cd-- vėl, trumpas pakeisti directory-- erdvę, pset1. Ir jei aš paspauskite "Enter", pastebėti, kas vyksta. Tai neatrodo kaip daug kas nutiko. Bet jei pažvelgti į eilutę, tai dabar man sako, kad aš ~ / darbo srities / pset1. Aš navigacija į pset1 aplankas, buvo per mano darbo vietos. Ir jei aš tipo ls, matau kai skiriasi Daiktai čia, tiesa? Tai nėra tas pats sąrašas, kurį aš mačiau anksčiau. Aš navigacija į pset1. Ir todėl dabar, kai aš tipo ls, aš gauti ką kontekstą galiu matyti iš per pset1 aplanką. Dabar aš ruošiuosi rašyti kontrolę l, o tai tik išvalo ekraną. Ir aš ruošiuosi sąrašą turinys kataloge vėl, tik taip galite pamatyti. Aš tik norėjau padaryti, kad išsiaiškinti kai kuriuos dalykus kad matėte apačioje ir užkirsti kelią tai nuo nueita pernelyg toli žemyn diapazono. Dabar, aš sakiau anksčiau, kad jei aš noriu pereiti į esamą katalogą, Galiu įrašykite cd kosmoso tašką. Paspauskite Enter. Jis nedaro nieko, tiesa? Aš keičiasi katalogų į einamojo katalogo. Jūs neprisijungęs visada bus rasti už vieną tašką poreikį, Bet jūs retkarčiais. Tarkime, kad aš noriu pereiti į aukštesnį lygį. Noriu grįžti prie Mano darbo sritis katalogas. Aš negaliu įrašykite cd darbo sritį, nėra tokio failo ar katalogo. Ir už that-- priežastis jei aš tipo LS dar vieną LAIKĄ_ yra tai, kad nėra jokio katalogas vadinamas Workspace viduje mano pset1 kataloge. Aš ruošiuosi išvalyti ekrane vėl su valdymo l. Prisiminkite, ką aš sakiau anksčiau, tačiau, kad mes galite naršyti atgal su tašku, dot. Štai patronuojančios katalogo pavadinimas. Taigi, jei aš tipo CD, erdvė, DOT, taškas, tada paspauskite "Enter", Dabar pažvelgti į tai, kas atsitiko. Mano komandų eilutę man sako, kad aš atgal į mano ~ / darbo srities kataloge. Aš persikėlė į aukštesnį lygį, Ačiū dot, dot. Dabar tarkime, kad aš, naudojant operacinė sistema, kuri yra Linux, bet nebūtinai pasakykite man, kur aš esu. Tai vienas atsitinka mums pasakyti, kad Aš ~ / darbo vietos dabar, į dešinę eilutę. Bet aš galėtų būti visiškai prarado katalogų netvarka, ir aš neįsivaizduoju, kur aš esu, ir ne idėja, kur aš noriu grįžti į. Yra du dalykai, kad galiu padaryti. Pirmiausia, aš galiu suprasti iš kur aš esu, įvesdami Darbuotojų komandiravimo direktyvą. Štai mano dabartiniais tarnybiniais katalogas. Ir jei aš paspauskite Enter, tai man sako, kur tiksliai aš esu. Dabar / home / Ubuntu yra ilgas kelias pasakyti, tilde, kuris yra jūsų namų kataloge. Bet tai man sako, kad aš namų / Ubuntu / Workspace, ar ~ / darbo vietos. Aš ruošiuosi pereiti prie mano pset1 katalogas kartą, ir aš ruošiuosi į sąrašą turinį. Ir matau, kad turiu kitą katalogas yra vadinamas priedai. Taigi, aš ruošiuosi cd į priedų, ir tada aš ruošiuosi išvalyti ekraną. Taigi, dabar, aš esu gana toli, tiesa? Ką daryti, jei noriu atgal į Workspace karto? Yra pora dalykų galėčiau padaryti. Galėčiau tipo CD, DOT, DOT, velniop, DOT, taškų, kad pereiti į aukštesnį lygį ir tada kitą lygį. Bet tai kokios erzina. Taigi, jei aš kada nors norite grįžti į tik mano namų kataloge, Tilde, Galiu įrašykite cd su nieko po jo. Cd Enter. Ir dabar, aš tilde. O jei aš noriu patekti į darbo vietą, Galiu tiesiog įveskite cd darbo vietos. Ir tai, kaip jūs dirbate besikeičiantys katalogai per CS50 IDE ar Linux Operacinė sistema į komandų eilutę. Gerai. Kitas vienas, kad galėtų praversti yra mkdir, kuris yra trumpas padaryti katalogas, jei man reikia sukurti naują aplanką. Jei esate susipažinę su GUI operacinė sistema, galite dešiniuoju pelės mygtuku spustelėkite. Ir tada, kai iš konteksto meniu pasirodo, pasirinkite Naujas katalogas. Tai tikriausiai kaip jūs tai padarė anksčiau. Bet mes taip pat galime sukurti Katalogai komandų eilutėje. Taigi, mes grįžome į IDE. Aš Zoom-on terminalo ir sąrašą mano katalogo turinį vėl, tiesiog duoti mums atskaitos rėmas. Tarkime, kad dabar aš pabaiga ant problemą nustatote 0 ir problema Set 1. Taigi noriu sukurti naują katalogą dirbti už problemos komplektas 2. Kaip man tai padaryti? Na, ir vėl, galėčiau dešiniuoju pelės mygtuku spustelėkite į kairėje pusėje ten ir pasirinkti Naujas aplankas ir sukurti pset2 katalogą. Tai būtų pernelyg dirbti. Bet tada aš taip pat padaryti jį ne komanda gana greitai linija, Įveskite mkdir, space-- I įvedėte N, but-- kosmoso pset2. Jei aš paspauskite Enter ir tada aš sąrašą vėl turinys mano kataloge, Matau, kad atrodo, dabar Turiu pset2 aplanką. Ir aš galiu naršyti į kad naudojant cd ir daryti visi darbai man reikia padaryti pset2. Beje, aš tiesiog pop per Čia tikrai greitai failų medį. Ir jūs galite pamatyti, kad taip pat, kad grafinė Failo Explorer matome, kad pset2 katalogas Taip pat buvo sukurta ten. Ir aš galiu pereiti į tai, naudojant grafines, taip pat. Kitą kartą ir tai tikriausiai praversti yra CP, kuris yra trumpas kopiją. Kopijuoti, skirtingai nuo visų kitų komandas mes matėme anksčiau, trunka dvi argumentus šaltinio, Pavadinimas failo, kurį norite kopijuoti, ir paskirties vietos, jei jums norite kopijuoti failą į. Tai gana lengva nukopijuoti failas, tad tai padaryti. Taigi, mes grįžome į IDE. Aš ruošiuosi į sąrašą turinį mano dabartinės katalogą LS. Dabar tarkime, kad aš noriu padaryti hello.txt kopiją. Vėlgi, iš failų medžio ant į kairę, grafinė sąsaja, Galėčiau dešiniuoju pelės mygtuku spustelėkite hello.txt, padaryti kopiją, įklijuoti kopiją. Bet aš galiu tai padaryti gana greitai komandų eilutėje taip pat. Tarkime, aš noriu nukopijuoti hello.txt į hi.txt. Galiu CP, erdvę, hello.txt. Štai mano šaltinio failas, taigi, tai kodėl Aš ruošiuosi pasirinkti, kad vienas pirmas. Ir tada man reikia pavadinti paskirties failas, hi.txt. Aš paspauskite Enter. Ir jei aš list of Contents Mano katalogas vėl ten hi.txt. Aš jo kopiją. Ir iš tiesų, jei aš į hi.txt, galėjau matyti, kad ji būtų tiksli dubliuoti visko, egzistavo mano hello.txt failą. Štai kaip jūs nukopijuoti failą. Bet kas, jei norite kopijuoti visame kataloge? Taigi antrasis, leiskite pažvelgti ne kas mano pset0 kataloge. Jei aš CD pset0 sąrašą ir turinį, Turiu katalogą, pavadintą, mėginį, ir įbrėžimams failą, scratch.sb2. Taigi, kad gera žinoti. Taigi leiskite išvalyti ekraną, ir aš ruošiuosi grįžti mano darbo srities kataloge antrą. Tarkime, kad dabar noriu padaryti mano pset0 kataloge kopiją. Aš negaliu tiesiog pasakyti cp pset0 pset3, pavyzdžiui. Jūs gausite šį keistą pranešimą, praleidžiant katalogas pset0. Kodėl jūs gaunate šią žinią? Na, it turns out, kad kai turite katalogą, turi kitų dalykų viduje ji, CP komanda tikrai ne visada žino, ką daryti su juo. Turime aiškiai pasakyti, Linux, terminalas, Noriu jums nukopijuoti pset0 katalogas ir kopija kiekvienas aplankas, egzistuoja viduje IT ir kiekvienas failas, kuris egzistuoja viduje ji. Kitaip tariant, man reikia jums rekursyviai neria žemyn į pset0 ir padaryti viską, kopiją ten. Jei aš noriu padaryti, ką aš galiu padaryti yra CP-R, už rekursinis pset0 pset3. Paspauskite Enter. Dabar, jeigu aš sąrašą turinys mano kataloge, Matau ten aisiais pset3 katalogas kad galiu dirbti. Ir jei aš kompaktinį diską į pset3 dabar ir tada sąraše turinį, ieškoti, ten mėginys ir scratch.sb2 dar kartą. Taigi tai gana kietas. Štai kaip jūs galite nukopijuoti visą katalogas, o ne tik vieną failą. Taigi, jei norite nukopijuoti katalogas, tiesiog prisiminti naudoti-r vėliava, kai esate dirbant su CP komanda. Gerai. Taigi aš nukopijuoti failą, bet Aš padariau jį per klaidą. Ir dabar, noriu atsikratyti jos. Kaip man tai padaryti? Vėlgi, jei esate susipažinę su GUI sąsają, galite dešiniuoju pelės mygtuku spustelėkite ir tiesiog pasirinkti Delete. Ir tai jums atsiųsime jį į šiukšlių arba šiukšlinės. Bet komandinėje eilutėje, mes gali tiesiog įveskite rm, už nuimti, ir tada pavadinimas failą norime atsikratyti. Dabar, Rm yra labai atsargūs. Tai daro dvigubo patikrinimo daug, įsitikinkite, kad jūs iš tikrųjų norite ištrinti failą. Ji nenori, kad jokių klaidų, nes nėra šiukšlinę čia. Kai mes ištrinti failą, jis dingo. Ir ten tikrai ne būdas ją susigrąžinti. Taigi, mes turime būti gana atsargūs, todėl RM bus tikrai atsargūs mums. Taigi grįžkime prie IDE ir atsikratyti, kad hi.txt failą kad aš sukurta prieš minutę kopiją. Taigi mes į IDE. Ir aš sąrašą mano katalogo turinį vėl, tik mums tikrą kontekstą. Aš turiu galvoje, jūs galite pamatyti, kad ten hi.txt, kurios aš sukūriau šiek tiek, o prieš. Dabar aš noriu atsikratyti juo. Kaip man tai padaryti? Vėlgi, tiesiog Rm. Taigi aš galiu įvesti rm hi.txt ir paspauskite "Enter". Ir ten RM savijauta tikrai atsargūs mus ir todėl, kad mes iš tikrųjų norite ištrinti šį failą. Ar tikrai norite pašalinti Nuolatinis tuščias failas hi.txt? Tai tiesiog kaip veiklos sistema, kaip ir "Windows" arba "Mac", kad jums gali būti susipažinęs su Popping kad dėžutė sako tu tikrai Ar tikrai norite tai padaryti. Aš esu gana įsitikinęs, aš noriu to, todėl aš ruošiuosi rašyti, yes-- ar aš galėčiau taip tiesiog įrašykite y-- ir paspauskite "Enter". Ir jei aš list of Contents Mano katalogas vėl hi.txt dingo. Neblogai, tiesa? Leiskite paspauskite Valdymo L, tiesiog atsikratyti visų šių dalykų ir gauk mus atgal iš ekrano viršuje. Dabar, yra būdas trumpojo jungimo RM, todėl kad ji neprašo mums šį klausimą. Mes tikrai žinome, mes norime atsikratyti to failo, ir mes net nenori turi būti klausiama. Kaip mes tai padaryti? Na, mes galime nurodyti Papildomas vėliava, tiesiog, kaip mes padarė su cp, kur mes gali pridėti-r vėliava, rekurencyjnego kopijuoti į katalogą. Yra kita vėliavos RM, kuris yra -F, kuris yra priversti rm daryti tiksliai ką mes sakau tai daryti. Taigi tarkime, kad dabar noriu atsikratyti savo hello.txt failą. Aš nenoriu, kad vienas arba. Ką aš galiu padaryti? Na, galiu rm-f hello.txt. Ką manote yra nutiks čia? Jis dingo. Net nebuvo užduoti man klausimą. Ir iš tiesų, jei aš sąrašą turinį mano kataloge ir vėl, ji dingo. Nėra anuliuoti čia. hello.txt dingo, ir aš nebuvau net paklausė, jei aš norėjau jį ištrinti. Ką daryti, jei noriu atsikratyti iš viso kataloge? Kaip jums tai padaryti yra labai panašios į kopiją. Jei norite i¹trinti katalogas, jūs ne tik norite ištrinti katalogą, jūs norite ištrinti viską viduje ji. Ir taip jūs naudojate -r, kad rekursyviai ištrinti katalogą. Taigi leiskite rm-r pset2. Aš ne iš tikrųjų dirba pset2, todėl galiu atsikratyti šio katalogo. Aš paspauskite Enter. Ar aš noriu pašalinti katalogas, pset2? Taip, aš. Ir jei aš list of Contents mano katalogo vėl, jis dingo. Gerai? Dar vienas variantas šia tema. Taigi aš išvalyti ekraną vėl, įdėti viską viršuje. Rezultatas ls. Dabar aš noriu atsikratyti mano pset3 kataloge ir aš tikrai žinau, aš noriu atsikratyti savo pset3 kataloge. Galiu rekursyviai ir prievarta ištrinti savo pset3 katalogą. Dabar, jūs ketinate būti tikrai atsargūs, kai jūs naudojate rm-rf. Kaip jums programuoti daugiau, tai bus ką jūs tiesiog padaryti tikrai greitai. Ir iš tikrųjų, aš jį visą laiką. Tačiau jis gali sukelti kai pražūtingų pasekmių, Jei netyčia ištrinti blogas dalykas. Taigi aš noriu jums žinoti, kad tai galimybė jums, bet jį naudoti taupiai, ir ją naudoti atsargiai. Aš žinau, už tai aš ne darbo mano problema nustatyti 3 nebėra, todėl aš ketina atsikratyti visų tų bylų. Ir aš žinau, aš nenoriu būti paprašyta kiekvieną kartą, jei aš noriu ištrinti byla, todėl aš ruošiuosi RM-rf pset3. Nebuvo net paklausti manęs, jei aš norėjo atsikratyti jos. I hit ls. pset3 dingo. Štai visas variacijas, kad jūs galite naudoti norėdami atsikratyti failus su RM. Paskutinis komandinės eilutės komanda tai ketina gana naudinga jums yra MV, kuris yra trumpas manevrų. Perkelti iš esmės prilygsta pervadinti. Jis juda failą iš vienos vietos į kitą, į paskirties vietą šaltinis. Pažiūrėkime, kur naudojant žingsnis gali būti naudinga tuo terminalo lange. Taigi, aš mano pset1 katalogas ir aš pastebėjau kažkas nuėjo šiek tiek negerai. Dirbau savo gobšus problemos, bet aš netyčia jį pavadino greddy. Taigi, kai aš išbandyti ir paleisti jį per check50, tai tikrai ne dirbti. Aš turiu keletą galimybių. Mes galime daryti tai, ką mes padarėme anksčiau, kuris yra padaryti bylos kopiją. Galėčiau kopijuoti greddy.c į greedy.c, tiesa? Paspauskite Enter. Matau, kad abu failai yra ten. Ir tada aš galėčiau rm, pašalinti, greddy.c. Tai atsikrato jį. Taigi, kad būtų dirbti, kai aš patvirtinti kad noriu atsikratyti jos. Ir aš iš tikrųjų turi pervadintas greddy.c į greedy.c. I kopijuotas, ir tada pašalinti originalą. Bet tai multi-pakopų procesas. Ir, žinoma, yra geresnis būdas. Iš tiesų, yra. Taigi leiskite paspausti Control L, tiesiog pareikšti šį atsargines kopijas, sąrašą ir turinį mano kataloge dar kartą. Taigi tarkime, oi, aš padariau klaidą. Aš tikrai tikrai nebuvo norite skambinti ši byla greddy.c. Vienu ypu, galiu tipas perkelti greedy.c į greddy.c. Paspauskite Enter. Ir dabar, aš neturėjau kopijuoti ir ją pašalinti, Aš tiesiog galėjo pervadinti. Vieno langelio. Dabar yra daug kitų daug pagrindiniai komandinės eilutės komunalinių kad galite naudoti su Linux komandinės eilutės. Ir mes bus aptarti daug iš jų į CS50 ateityje. Bet dabar, tiesiog gauti savo kojas šlapias su dirbti su šiuo terminalu Aplinka, šie penki komandos turėtų jums gana toli naršyti aplink ir Darbas su failais jūsų IDE arba bet kokia Linux operacinė sistema, jūs naudojate. Jei esate smalsus ir norite žvelgti į ateitį truputį į kai iš komandinės eilutės komandas mes naudojate ateityje, čia yra pora sąrašas iš labiausiai paplitusių tie. Aš Doug Lloyd. Tai CS50.