1 00:00:00,000 --> 00:00:05,060 >> [RIPRODUZIONE DI BRANI MUSICALI] 2 00:00:05,060 --> 00:00:05,890 >> DOUG LLOYD: OK. 3 00:00:05,890 --> 00:00:08,680 Quindi parliamo di come utilizzare la riga di comando di Linux. 4 00:00:08,680 --> 00:00:11,860 Ora, il CS50 IDE, o Infatti, anche un dispositivo CS50, 5 00:00:11,860 --> 00:00:15,210 se si ha familiarità con questo, o si sta prendendo una versione precedente di CS50, 6 00:00:15,210 --> 00:00:17,420 è una macchina basata su cloud che gestisce Ubuntu, 7 00:00:17,420 --> 00:00:20,259 che è uno dei tanti sapori del sistema operativo Linux. 8 00:00:20,259 --> 00:00:22,300 Sistema operativo Linux è favorita dai programmatori, 9 00:00:22,300 --> 00:00:25,690 perché è solo più fresco, giusto? 10 00:00:25,690 --> 00:00:29,170 >> Molte distribuzioni Linux moderne hanno interfacce grafiche, 11 00:00:29,170 --> 00:00:33,710 che noi chiamiamo anche GUI, G-U-I, a permettere una facile navigazione basato sul mouse, 12 00:00:33,710 --> 00:00:36,920 che probabilmente stai familiarità con, se sei un utente Windows o Mac, 13 00:00:36,920 --> 00:00:39,961 muoversi il mouse, doppio clic sulle icone, e così via. 14 00:00:39,961 --> 00:00:42,210 Ancora, però, come programmatore, e anche se l'IDE 15 00:00:42,210 --> 00:00:44,800 contiene la capacità di fare qualche utente grafica 16 00:00:44,800 --> 00:00:47,400 roba, clic, e trascinamento, e tutto ciò che, 17 00:00:47,400 --> 00:00:50,197 ci si può comunque utilizzare il tuo finestra di terminale piuttosto frequente. 18 00:00:50,197 --> 00:00:52,280 E si può fare molte delle stesse attività che è possibile 19 00:00:52,280 --> 00:00:53,905 fare con un mouse con i comandi della tastiera. 20 00:00:53,905 --> 00:00:56,821 E stiamo andando a parlare un po ' su quello che alcuni di questi comandi 21 00:00:56,821 --> 00:00:58,050 sono in questo momento. 22 00:00:58,050 --> 00:01:02,490 >> Ora, questi comandi possono essere utilizzati su qualsiasi operativo basato su Unix 23 00:01:02,490 --> 00:01:06,790 sistema, che comprende Linux, ma comprende anche Mac OS. 24 00:01:06,790 --> 00:01:12,930 Se si apre terminale sul vostro Mac, è possibile utilizzare questi comandi esatti. 25 00:01:12,930 --> 00:01:15,705 Windows ha anche Comando Prompt, ma alcuni dei comandi 26 00:01:15,705 --> 00:01:17,871 sono leggermente diversi, così in realtà non funziona, 27 00:01:17,871 --> 00:01:20,080 perché Windows non è un sistema basato su Unix. 28 00:01:20,080 --> 00:01:22,620 >> Quindi, diamo uno sguardo ad alcuni di questi comandi di Linux. 29 00:01:22,620 --> 00:01:26,100 Il primo che ti probabilmente usare un bel po 'è ls. 30 00:01:26,100 --> 00:01:30,410 Questa è una l minuscola, seguita da una minuscolo s, che è l'abbreviazione di lista. 31 00:01:30,410 --> 00:01:33,720 E che il comando list fa è che ti dà una lettura di tutti i file 32 00:01:33,720 --> 00:01:35,670 e cartelle nella directory corrente. 33 00:01:35,670 --> 00:01:39,430 Così si può vedere tutto il possibile arrivare da dove siete attualmente. 34 00:01:39,430 --> 00:01:41,545 >> Così ho aperto qui l'IDE CS50. 35 00:01:41,545 --> 00:01:44,540 E ho intenzione di zoom-in in un secondo per dare un'occhiata più da vicino, 36 00:01:44,540 --> 00:01:47,240 ma ecco la quadro generale di ciò che l'IDE assomiglia. 37 00:01:47,240 --> 00:01:49,580 Sulla sinistra, si può vedere che abbiamo un albero di file, che probabilmente stai 38 00:01:49,580 --> 00:01:52,663 familiarità con, doppio clic, e file e cartelle, e tutta quella roba. 39 00:01:52,663 --> 00:01:54,694 Ecco, questo è ancora lì nell'apparecchio CS50. 40 00:01:54,694 --> 00:01:57,860 Al centro in alto è dove sei intenzione di scrivere il codice, una volta 41 00:01:57,860 --> 00:01:58,960 si fa clic su un file. 42 00:01:58,960 --> 00:02:00,900 E in fondo, abbiamo avere una finestra di terminale, 43 00:02:00,900 --> 00:02:04,040 che è dove siamo in grado di eseguire questi comandi del terminale. 44 00:02:04,040 --> 00:02:07,460 >> Ho intenzione di zoom-in e la testa qui, 45 00:02:07,460 --> 00:02:12,360 per dimostrare che, in realtà, non posso clicca su questi file e cartelle. 46 00:02:12,360 --> 00:02:17,010 Quindi, chiaramente, dove attualmente sono, io ho due cartelle, denominate pset0 e pset1, 47 00:02:17,010 --> 00:02:20,520 e tre file, uno chiamato ciao, uno chiamato hello.c, 48 00:02:20,520 --> 00:02:22,870 e uno chiamato ciao.txt. 49 00:02:22,870 --> 00:02:27,100 >> Quindi cerchiamo di spostare verso il basso al terminale finestra e ottenere uno sguardo più da vicino. 50 00:02:27,100 --> 00:02:31,010 Quindi abbiamo appena parlato, ancora una volta, sulla fatto di avere tre file e due 51 00:02:31,010 --> 00:02:32,970 cartelle nella directory corrente. 52 00:02:32,970 --> 00:02:37,080 Se digito ls, che ancora una volta è il comando per elencare 53 00:02:37,080 --> 00:02:40,870 il contenuto della corrente directory, e poi mi ha colpito Invio, 54 00:02:40,870 --> 00:02:47,220 Guardo ciò che vedo, ciao, hello.c, ciao.txt, pset0 e pset1. 55 00:02:47,220 --> 00:02:49,620 >> pset0 e pset1 sono di colore blu, per indicare 56 00:02:49,620 --> 00:02:52,420 a voi che quelle sono le directory che abbiamo potuto navigare in. 57 00:02:52,420 --> 00:02:54,503 E impareremo un po ' po 'su come navigare 58 00:02:54,503 --> 00:02:56,290 in directory in un minuto. 59 00:02:56,290 --> 00:03:00,920 E ogni altra cosa è di colore nero, se si tratta di un file di testo o un codice sorgente 60 00:03:00,920 --> 00:03:03,590 File e verde, se si tratta di un file eseguibile. 61 00:03:03,590 --> 00:03:06,367 Quindi, chiaramente, questo significa che io potrebbe eseguire un programma chiamato, ciao. 62 00:03:06,367 --> 00:03:07,950 Questo è ciò che quella verde lì significa. 63 00:03:07,950 --> 00:03:10,080 Ma in fondo, digitando il comando ls ha permesso 64 00:03:10,080 --> 00:03:13,470 che guardi tutto ciò che esiste nella mia directory corrente, che 65 00:03:13,470 --> 00:03:17,940 corrisponde a quello che vediamo qui, in rappresentazione grafica della stessa. 66 00:03:17,940 --> 00:03:19,940 Il comando successivo Avrete probabilmente usare un po ' 67 00:03:19,940 --> 00:03:24,792 è CD, minuscola c, d minuscola, che è l'abbreviazione di change directory. 68 00:03:24,792 --> 00:03:27,500 Questo ci permette di fare quello che ero parlando di un secondo fa, che 69 00:03:27,500 --> 00:03:31,150 è quello di navigare tra directory negli comando 70 00:03:31,150 --> 00:03:33,700 linea, anziché doppio clic su cartelle. 71 00:03:33,700 --> 00:03:37,250 Quindi, se digitiamo cd e poi il nome di una directory, 72 00:03:37,250 --> 00:03:40,890 possiamo entrare in quella directory. 73 00:03:40,890 --> 00:03:44,680 >> Per inciso, sapere che il nome della directory corrente è sempre 74 00:03:44,680 --> 00:03:48,670 dot, e il nome della directory un livello superiore in cui ci troviamo ora, 75 00:03:48,670 --> 00:03:54,820 questo è il nome della cartella in che la nostra cartella è, puntino, dot-- 76 00:03:54,820 --> 00:03:56,851 o in cui la nostra cartella è, è punto, punto. 77 00:03:56,851 --> 00:03:59,350 E se siete curiosi di sapere sempre il nome della directory, 78 00:03:59,350 --> 00:04:03,430 è possibile digitare pwd, che sta per directory di lavoro. 79 00:04:03,430 --> 00:04:06,827 Daremo uno sguardo a tutti questi ora, per tornare all'IDE CS50. 80 00:04:06,827 --> 00:04:08,160 Così sono tornato nel mio lavoro ora. 81 00:04:08,160 --> 00:04:11,930 E io lo zoom-in di nuovo sul terminale, in modo che possiamo dare un'occhiata 82 00:04:11,930 --> 00:04:14,209 a muoversi all'interno dell'IDE. 83 00:04:14,209 --> 00:04:16,250 Quindi ho intenzione di elencare la contenuti della mia directory 84 00:04:16,250 --> 00:04:19,220 ancora una volta, solo per rifondare noi dove siamo. 85 00:04:19,220 --> 00:04:21,740 Quindi, se digito ls, che è per la lista di nuovo, 86 00:04:21,740 --> 00:04:24,160 Vedo che posso arrivare a pset0 e pset1. 87 00:04:24,160 --> 00:04:26,420 Queste sono le directory Posso raggiungere da qui. 88 00:04:26,420 --> 00:04:30,400 Lo so, perché l'IDE dà me un indizio colorando loro blu. 89 00:04:30,400 --> 00:04:33,295 >> Diciamo che voglio entrare nel mio elenco pset1, 90 00:04:33,295 --> 00:04:35,310 perché sto lavorando su problema set 1. 91 00:04:35,310 --> 00:04:41,380 Posso scrivere cd-- di nuovo, breve per cambiare directory-- spazio, pset1. 92 00:04:41,380 --> 00:04:43,334 E se premete Invio, notare cosa succede. 93 00:04:43,334 --> 00:04:45,000 Non sembra come sono successe molte cose. 94 00:04:45,000 --> 00:04:50,510 Ma se si guarda al prompt, ora mi dice che io sono in ~ / lavoro / pset1. 95 00:04:50,510 --> 00:04:55,510 Ho navigato nel pset1 cartella che era nel mio lavoro. 96 00:04:55,510 --> 00:05:00,560 >> E se digito ls, Vedo alcuni roba diverso qui, giusto? 97 00:05:00,560 --> 00:05:03,810 Questo non è lo stesso lista che ho visto prima. 98 00:05:03,810 --> 00:05:05,350 Ho navigato in pset1. 99 00:05:05,350 --> 00:05:08,560 E così ora, quando digito ls, sono ottenere il contesto di quello che posso 100 00:05:08,560 --> 00:05:12,600 vedere all'interno della cartella pset1. 101 00:05:12,600 --> 00:05:16,056 >> Ora, sto andando a digitare il controllo l, che ha appena pulisce lo schermo. 102 00:05:16,056 --> 00:05:18,180 E ho intenzione di elencare la contenuto della directory 103 00:05:18,180 --> 00:05:18,880 ancora una volta, solo così si può vedere. 104 00:05:18,880 --> 00:05:20,730 Volevo solo fare questo a cancellare alcune delle cose 105 00:05:20,730 --> 00:05:22,521 che si è visto in basso e per evitare questo 106 00:05:22,521 --> 00:05:24,660 di andare troppo in basso fuori portata. 107 00:05:24,660 --> 00:05:28,440 >> Ora, ho già detto che, se voglio per passare alla directory corrente, 108 00:05:28,440 --> 00:05:31,580 Posso digitare cd spazio puntino. 109 00:05:31,580 --> 00:05:32,080 Premere Invio. 110 00:05:32,080 --> 00:05:33,330 Non fa niente, giusto? 111 00:05:33,330 --> 00:05:35,480 Sto cambiando directory nella directory corrente. 112 00:05:35,480 --> 00:05:37,813 Non stai andando sempre trovare una necessità per un singolo punto, 113 00:05:37,813 --> 00:05:39,540 ma si vuole tanto in tanto. 114 00:05:39,540 --> 00:05:41,950 >> Diciamo che voglio per salire di un livello. 115 00:05:41,950 --> 00:05:44,450 Voglio tornare a mia directory di lavoro. 116 00:05:44,450 --> 00:05:49,800 Non è possibile inserire cd di lavoro, non ci sono file o directory. 117 00:05:49,800 --> 00:05:52,780 E la ragione di che-- se digito ls un'altra tempo-- 118 00:05:52,780 --> 00:05:58,060 è che non vi è alcuna directory chiamata spazio di lavoro all'interno della mia directory pset1. 119 00:05:58,060 --> 00:06:00,275 Ho intenzione di cancellare la mia schermo di nuovo con il controllo l. 120 00:06:00,275 --> 00:06:02,150 Ricordate ciò che ho detto prima, però, che ci 121 00:06:02,150 --> 00:06:04,010 può navigare indietro con il puntino, dot. 122 00:06:04,010 --> 00:06:05,880 Questo è il nome della directory principale. 123 00:06:05,880 --> 00:06:10,727 Quindi, se digito cd, spazio, punto, dot, e poi premere Invio, 124 00:06:10,727 --> 00:06:11,810 ora guardare a ciò che è accaduto. 125 00:06:11,810 --> 00:06:15,250 Il mio richiamo di ordine mi dice che io sono indietro nella mia directory ~ / lavoro. 126 00:06:15,250 --> 00:06:19,360 Mi sono trasferito di un livello, grazie a dot, dot. 127 00:06:19,360 --> 00:06:23,400 >> Ora, diciamo che sto usando un sistema operativo è basato su Linux, 128 00:06:23,400 --> 00:06:25,440 ma non lo fa necessariamente dimmi dove mi trovo. 129 00:06:25,440 --> 00:06:28,370 Questo accade a dirci che Sono in ~ / lavoro in questo momento, 130 00:06:28,370 --> 00:06:29,280 a destra al prompt. 131 00:06:29,280 --> 00:06:31,940 Ma potrei essere completamente perso in un pasticcio di cartelle, 132 00:06:31,940 --> 00:06:34,946 e non ho idea di dove sono e nessuna idea di dove voglio tornare a. 133 00:06:34,946 --> 00:06:36,320 Ci sono due cose che posso fare. 134 00:06:36,320 --> 00:06:40,920 >> Prima di tutto, io riesco a capire dove sono io, digitando pwd. 135 00:06:40,920 --> 00:06:42,720 Questa è la mia directory di lavoro. 136 00:06:42,720 --> 00:06:45,830 E se premete Invio, esso mi dice esattamente dove sono. 137 00:06:45,830 --> 00:06:49,400 Ora / home / ubuntu è la lungo modo di dire, tilde, 138 00:06:49,400 --> 00:06:51,290 che è la vostra directory home. 139 00:06:51,290 --> 00:06:56,540 Ma mi dice che io sono in home / ubuntu / area di lavoro, o ~ / area di lavoro. 140 00:06:56,540 --> 00:07:00,700 >> Io vado a navigare mia directory pset1 di nuovo, 141 00:07:00,700 --> 00:07:02,229 e ho intenzione di elencare il contenuto. 142 00:07:02,229 --> 00:07:04,770 E vedo che ho un altro directory là, chiamato comparse. 143 00:07:04,770 --> 00:07:09,020 Quindi ho intenzione di cd in comparse, e poi ho intenzione di cancellare il mio schermo. 144 00:07:09,020 --> 00:07:11,540 >> Così ora, sono abbastanza lontano, giusto? 145 00:07:11,540 --> 00:07:13,680 Che cosa devo fare per tornare di area di lavoro subito? 146 00:07:13,680 --> 00:07:15,138 Ci sono un paio di cose che potrei fare. 147 00:07:15,138 --> 00:07:18,750 Potrei scrivere cd, punto, punto, tagliare, puntino, puntino, per salire di un livello e poi 148 00:07:18,750 --> 00:07:19,640 un altro livello. 149 00:07:19,640 --> 00:07:21,090 Ma questo è un po 'fastidioso. 150 00:07:21,090 --> 00:07:24,990 >> Quindi, se mai voglia di tornare a solo la mia home directory, tilde, 151 00:07:24,990 --> 00:07:27,690 Posso digitare cd con niente dopo di esso. 152 00:07:27,690 --> 00:07:29,224 Cd, Invio. 153 00:07:29,224 --> 00:07:30,140 E ora, io sono in tilde. 154 00:07:30,140 --> 00:07:34,310 E se voglio arrivare a lavoro, Posso solo tipo di CD di lavoro. 155 00:07:34,310 --> 00:07:36,770 Ed è così che si lavora cambiando le directory 156 00:07:36,770 --> 00:07:42,080 all'interno dell'IDE CS50 o Linux sistema operativo dalla riga di comando. 157 00:07:42,080 --> 00:07:42,580 Tutto ok. 158 00:07:42,580 --> 00:07:45,610 Il prossimo che potrebbe tornare utile è mkdir, 159 00:07:45,610 --> 00:07:48,709 che è l'abbreviazione di creare una directory, se ho bisogno di creare una nuova cartella. 160 00:07:48,709 --> 00:07:50,750 Se si ha familiarità con il sistema operativo GUI, 161 00:07:50,750 --> 00:07:51,820 si potrebbe fare clic destro. 162 00:07:51,820 --> 00:07:54,500 E poi, quando il menu contestuale si apre, scegliete Nuova cartella. 163 00:07:54,500 --> 00:07:56,250 Questo è probabilmente il modo che hai fatto prima. 164 00:07:56,250 --> 00:08:00,979 Ma possiamo anche creare directory nella riga di comando. 165 00:08:00,979 --> 00:08:02,020 Così siamo tornati nell'IDE. 166 00:08:02,020 --> 00:08:08,020 Io zoom-in sul terminale e elencare il contenuto della mia directory 167 00:08:08,020 --> 00:08:11,882 di nuovo, giusto per dare noi un quadro di riferimento. 168 00:08:11,882 --> 00:08:14,340 Diciamo che, ora, ho finito di lavorare sul problema impostato 0 169 00:08:14,340 --> 00:08:15,580 e problema set 1. 170 00:08:15,580 --> 00:08:19,390 Quindi voglio creare una nuova directory a lavorare sul problema di set 2. 171 00:08:19,390 --> 00:08:20,420 Come lo faccio? 172 00:08:20,420 --> 00:08:24,132 >> Bene, ancora una volta, ho potuto fare clic destro nel lato sinistro ci e scegli Nuova cartella 173 00:08:24,132 --> 00:08:25,340 e creare una directory PSet2. 174 00:08:25,340 --> 00:08:26,240 Che avrebbe funzionato anche. 175 00:08:26,240 --> 00:08:28,615 Ma poi faccio anche al linea di comando abbastanza rapidamente, 176 00:08:28,615 --> 00:08:35,049 digitando mkdir, io space-- digitato n, ma-- spazio PSet2. 177 00:08:35,049 --> 00:08:38,659 Se mi ha colpito Enter e poi vi elenco il contenuti della mia directory di nuovo, 178 00:08:38,659 --> 00:08:40,710 Vedo che, guarda, ora Ho una cartella PSet2. 179 00:08:40,710 --> 00:08:43,110 E posso navigare in che l'uso di cd e fare 180 00:08:43,110 --> 00:08:45,614 tutto il lavoro che ho bisogno di fare per PSet2. 181 00:08:45,614 --> 00:08:48,530 Per inciso, mi limiterò a pop sopra qui molto velocemente per la struttura dei file. 182 00:08:48,530 --> 00:08:53,494 E si può vedere che, anche, in File Explorer grafica, 183 00:08:53,494 --> 00:08:56,160 possiamo vedere che la directory PSet2 è stato creato anche lì. 184 00:08:56,160 --> 00:08:58,537 E posso passare a esso, utilizzando la GUI pure. 185 00:08:58,537 --> 00:09:00,870 La prossima volta e che è probabilmente andando a venire in aiuto 186 00:09:00,870 --> 00:09:03,650 è cp, che è breve per la copia. 187 00:09:03,650 --> 00:09:06,960 Copia, a differenza di tutti gli altri i comandi che abbiamo visto prima, 188 00:09:06,960 --> 00:09:11,800 prende due argomenti, una fonte, la il nome del file che si desidera copiare, 189 00:09:11,800 --> 00:09:15,810 e una destinazione, dove si vuole copiare il file. 190 00:09:15,810 --> 00:09:19,490 E 'abbastanza facile da copiare un file, quindi cerchiamo di farlo. 191 00:09:19,490 --> 00:09:20,640 >> Così siamo tornati nell'IDE. 192 00:09:20,640 --> 00:09:24,540 Io vado a elencare il contenuto della mia directory corrente con ls. 193 00:09:24,540 --> 00:09:28,310 Ora, diciamo che voglio per fare una copia di ciao.txt. 194 00:09:28,310 --> 00:09:32,120 Anche in questo caso, dall'albero file sul a sinistra, l'interfaccia grafica, 195 00:09:32,120 --> 00:09:35,969 Potrei fare clic destro sul ciao.txt, fare una copia, incolla la copia. 196 00:09:35,969 --> 00:09:38,260 Ma posso farlo abbastanza rapidamente nella riga di comando troppo. 197 00:09:38,260 --> 00:09:42,520 >> Diciamo che voglio copiare ciao.txt a hi.txt. 198 00:09:42,520 --> 00:09:45,850 Posso cp, spazio, ciao.txt. 199 00:09:45,850 --> 00:09:48,850 Questo è il mio file di origine, ecco perché Ho intenzione di scegliere prima quella. 200 00:09:48,850 --> 00:09:51,058 E poi ho bisogno di chiamare il file di destinazione, hi.txt. 201 00:09:51,058 --> 00:09:53,690 202 00:09:53,690 --> 00:09:54,620 Mi ha colpito Invio. 203 00:09:54,620 --> 00:09:57,930 E se vi elenco il contenuto del mio directory di nuovo, c'è hi.txt. 204 00:09:57,930 --> 00:09:59,220 Ho fatto una copia di esso. 205 00:09:59,220 --> 00:10:01,090 E infatti, se sono andato in hi.txt, ho potuto 206 00:10:01,090 --> 00:10:04,030 vedere che sarebbe un esatto duplicare di tutto ciò che 207 00:10:04,030 --> 00:10:08,330 esisteva nel mio file ciao.txt. 208 00:10:08,330 --> 00:10:09,790 >> Ecco come si copia un file. 209 00:10:09,790 --> 00:10:12,680 Ma cosa succede se si vuole copiare un'intera directory? 210 00:10:12,680 --> 00:10:16,510 Così, per un secondo, diamo uno sguardo a ciò che è nella mia directory pset0. 211 00:10:16,510 --> 00:10:23,950 Se io cd pset0 e elencare il contenuto, Ho una directory chiamata, campione, 212 00:10:23,950 --> 00:10:26,252 e un file di lavoro, scratch.sb2. 213 00:10:26,252 --> 00:10:27,210 Così che è bene sapere. 214 00:10:27,210 --> 00:10:29,800 Quindi cerchiamo di cancellare lo schermo, e ho intenzione di tornare indietro 215 00:10:29,800 --> 00:10:32,870 al mio directory dell'area di lavoro per un secondo. 216 00:10:32,870 --> 00:10:36,630 >> Diciamo che, ora, voglio fare una copia della mia directory pset0. 217 00:10:36,630 --> 00:10:42,940 Non posso dire cp pset0 pset3, per esempio. 218 00:10:42,940 --> 00:10:46,220 Si ottiene questo messaggio strano, omettendo directory pset0. 219 00:10:46,220 --> 00:10:47,439 Perché si ottiene quel messaggio? 220 00:10:47,439 --> 00:10:49,730 Beh, si scopre che, quando si dispone di una directory che 221 00:10:49,730 --> 00:10:53,150 ha altre cose all'interno di esso, il comando cp non lo fa davvero 222 00:10:53,150 --> 00:10:55,590 necessariamente sapere che cosa fare con esso. 223 00:10:55,590 --> 00:10:59,670 >> Dobbiamo esplicitamente dire a Linux, il terminale, 224 00:10:59,670 --> 00:11:03,720 Voglio di copiare il directory pset0 e copia 225 00:11:03,720 --> 00:11:07,530 ogni cartella che esiste dentro di esso e ogni file 226 00:11:07,530 --> 00:11:08,750 esiste all'interno di esso. 227 00:11:08,750 --> 00:11:13,270 In altre parole, ho bisogno che ricorsivamente tuffarsi giù in pset0 228 00:11:13,270 --> 00:11:15,660 e fare una copia di tutto lì dentro. 229 00:11:15,660 --> 00:11:25,280 >> Se voglio farlo, che cosa posso fare è cp-r, per ricorsivo, pset3 pset0. 230 00:11:25,280 --> 00:11:26,850 Premere Invio. 231 00:11:26,850 --> 00:11:29,290 Ora, se vi elenco il contenuti della mia directory, 232 00:11:29,290 --> 00:11:32,180 Vedo che c'è il pset3 directory che posso lavorare con. 233 00:11:32,180 --> 00:11:36,990 E se I cd in pset3 adesso e poi elencare il contenuto, guardare, 234 00:11:36,990 --> 00:11:39,594 c'è il campione e scratch.sb2 di nuovo. 235 00:11:39,594 --> 00:11:40,510 Ecco, questo è piuttosto fresco. 236 00:11:40,510 --> 00:11:43,819 Ecco come è possibile copiare un intero directory, e non solo un singolo file. 237 00:11:43,819 --> 00:11:45,860 Quindi, se si desidera copiare un directory, basta ricordare 238 00:11:45,860 --> 00:11:49,830 per utilizzare il flag -r quando sei lavorare con il comando cp. 239 00:11:49,830 --> 00:11:50,330 Tutto ok. 240 00:11:50,330 --> 00:11:52,320 Così ho copiato un file, ma L'ho fatto per errore. 241 00:11:52,320 --> 00:11:53,695 E ora, voglio sbarazzarsi di esso. 242 00:11:53,695 --> 00:11:54,850 Come lo faccio? 243 00:11:54,850 --> 00:11:56,830 Anche in questo caso, se si ha familiarità con un'interfaccia grafica, 244 00:11:56,830 --> 00:11:58,310 è possibile fare clic destro e basta scegliere Elimina. 245 00:11:58,310 --> 00:12:00,630 E sarà inviarlo al cestino o il Cestino. 246 00:12:00,630 --> 00:12:03,320 Ma nella riga di comando, ci può solo digitare rm, per rimuovere, 247 00:12:03,320 --> 00:12:05,580 e quindi il nome del file che vogliamo eliminare. 248 00:12:05,580 --> 00:12:08,614 >> Ora, rm è molto attento. 249 00:12:08,614 --> 00:12:11,280 Si fa un sacco di duplice controllo, fare in modo che in realtà 250 00:12:11,280 --> 00:12:12,377 vuole eliminare il file. 251 00:12:12,377 --> 00:12:15,460 Non vuole fare errori, perché non c'è Cestino qui. 252 00:12:15,460 --> 00:12:17,010 Una volta che si elimina un file, non c'è più. 253 00:12:17,010 --> 00:12:18,710 E non c'è davvero nessun modo per recuperarlo. 254 00:12:18,710 --> 00:12:20,730 Quindi abbiamo bisogno di essere abbastanza attento, e così rm 255 00:12:20,730 --> 00:12:23,110 sta per essere molto attenti per noi. 256 00:12:23,110 --> 00:12:27,120 >> Così torniamo all'IDE e di sbarazzarsi di quel file hi.txt 257 00:12:27,120 --> 00:12:29,640 che ho creato un minuto fa con copia. 258 00:12:29,640 --> 00:12:30,560 Quindi siamo nell'IDE. 259 00:12:30,560 --> 00:12:33,180 E io elencare il contenuto della mia directory ancora una volta, solo per darci un po 'di contesto. 260 00:12:33,180 --> 00:12:36,500 Voglio dire, si può vedere che c'è hi.txt, che ho creato un po 'di tempo fa. 261 00:12:36,500 --> 00:12:38,196 Ora, voglio sbarazzarsi di esso. 262 00:12:38,196 --> 00:12:38,820 Come lo faccio? 263 00:12:38,820 --> 00:12:39,810 >> Anche in questo caso, solo rm. 264 00:12:39,810 --> 00:12:46,220 Così posso digitare rm hi.txt e premere Invio. 265 00:12:46,220 --> 00:12:47,970 E c'è rm benessere molto attenti per noi 266 00:12:47,970 --> 00:12:50,178 e assicurandosi che in realtà voler eliminare questo file. 267 00:12:50,178 --> 00:12:52,784 Sei sicuro di voler rimuovere regolare hi.txt file vuoto? 268 00:12:52,784 --> 00:12:55,200 Questo è solo come un operativo sistema, come Windows o Mac, 269 00:12:55,200 --> 00:12:56,310 che si può essere familiarità con popping up 270 00:12:56,310 --> 00:12:58,770 quella scatola dice che sei veramente sicuri di voler fare questo. 271 00:12:58,770 --> 00:13:01,228 >> Sono abbastanza sicuro che voglio questo, così ho intenzione di scrivere, yes-- 272 00:13:01,228 --> 00:13:04,390 Oppure potrei anche solo digitare y-- e premere Invio. 273 00:13:04,390 --> 00:13:08,620 E se vi elenco il contenuto del mio directory nuovamente, hi.txt è andato. 274 00:13:08,620 --> 00:13:10,000 Non male, vero? 275 00:13:10,000 --> 00:13:12,410 Facciamo premere Control L, appena per sbarazzarsi di tutta questa roba 276 00:13:12,410 --> 00:13:14,900 e farci tornare a la parte superiore dello schermo. 277 00:13:14,900 --> 00:13:18,520 >> Ora, vi è un modo per cortocircuito rm, così 278 00:13:18,520 --> 00:13:20,090 che non ci chiede questa domanda. 279 00:13:20,090 --> 00:13:22,060 Sappiamo davvero vogliamo per sbarazzarsi di quel file, 280 00:13:22,060 --> 00:13:23,490 e non abbiamo nemmeno vogliamo da porsi la domanda. 281 00:13:23,490 --> 00:13:24,720 Come lo facciamo? 282 00:13:24,720 --> 00:13:27,180 Beh, siamo in grado di specificare un Bandiera in più, proprio come noi 283 00:13:27,180 --> 00:13:30,400 ha fatto con cp dove siamo potrebbe aggiungere il flag -r, 284 00:13:30,400 --> 00:13:32,800 per copiare ricorsivamente in una directory. 285 00:13:32,800 --> 00:13:35,630 C'è un'altra bandiera per rm, che è -f, 286 00:13:35,630 --> 00:13:39,470 che è quello di forzare rm per fare esattamente quello che stiamo dicendo di fare. 287 00:13:39,470 --> 00:13:44,610 >> Quindi diciamo che, ora, voglio per sbarazzarsi del mio file ciao.txt. 288 00:13:44,610 --> 00:13:46,490 Non voglio che si sia. 289 00:13:46,490 --> 00:13:47,370 Cosa posso fare? 290 00:13:47,370 --> 00:13:54,710 Beh, posso rm -f ciao.txt. 291 00:13:54,710 --> 00:13:57,530 Cosa pensi sia succederà qui? 292 00:13:57,530 --> 00:13:58,030 È andato. 293 00:13:58,030 --> 00:13:59,363 Non ho nemmeno a me fare la domanda. 294 00:13:59,363 --> 00:14:03,600 E infatti, se vi elenco i contenuti di mia directory di nuovo, non c'è più. 295 00:14:03,600 --> 00:14:05,750 Non c'è nessun annullamento qui. 296 00:14:05,750 --> 00:14:09,554 ciao.txt è andato, e io non era anche chiesto se volevo cancellarlo. 297 00:14:09,554 --> 00:14:11,595 Che cosa devo fare per liberarsi di un'intera directory? 298 00:14:11,595 --> 00:14:14,180 299 00:14:14,180 --> 00:14:17,039 Il modo di fare che è molto simile a copiare. 300 00:14:17,039 --> 00:14:19,080 Se si desidera eliminare un directory, non è necessario solo 301 00:14:19,080 --> 00:14:22,121 di voler cancellare la directory, che si desidera di eliminare tutto all'interno di esso. 302 00:14:22,121 --> 00:14:26,250 E così si utilizza -r, a ricorsivamente cancellare una directory. 303 00:14:26,250 --> 00:14:28,600 >> Quindi cerchiamo di rm -r PSet2. 304 00:14:28,600 --> 00:14:31,870 Io non sono in realtà lavorando su PSet2, così posso liberarmi di quella directory. 305 00:14:31,870 --> 00:14:33,040 Mi ha colpito Invio. 306 00:14:33,040 --> 00:14:35,050 Voglio rimuovere la directory, PSet2? 307 00:14:35,050 --> 00:14:37,160 Sì. 308 00:14:37,160 --> 00:14:41,150 E se vi elenco i contenuti della il mio elenco di nuovo, non c'è più. 309 00:14:41,150 --> 00:14:41,650 Tutto ok? 310 00:14:41,650 --> 00:14:43,739 >> Ancora una variazione su questo tema. 311 00:14:43,739 --> 00:14:46,280 Così io cancellare di nuovo lo schermo, mettere tutto in alto. 312 00:14:46,280 --> 00:14:47,420 Hit ls. 313 00:14:47,420 --> 00:14:49,890 Ora, voglio liberarmi di mia directory pset3, 314 00:14:49,890 --> 00:14:52,810 e so davvero che voglio sbarazzarsi della mia directory pset3. 315 00:14:52,810 --> 00:15:00,120 Posso ricorsivamente e forza rimuovere il mio elenco pset3. 316 00:15:00,120 --> 00:15:03,900 >> Ora, si sta andando ad essere veramente Fare attenzione quando si sta utilizzando rm -rf. 317 00:15:03,900 --> 00:15:06,784 Come si programma più, sarà qualcosa basta fare molto velocemente. 318 00:15:06,784 --> 00:15:08,200 E infatti, lo faccio tutto il tempo. 319 00:15:08,200 --> 00:15:10,380 Ma può portare a qualche conseguenze disastrose, 320 00:15:10,380 --> 00:15:12,340 se accidentalmente eliminare la cosa sbagliata. 321 00:15:12,340 --> 00:15:15,089 Quindi io voglio che tu sia consapevole del fatto che questa è un'opzione disponibile per voi, 322 00:15:15,089 --> 00:15:17,220 ma usarlo con parsimonia, e utilizzarlo con cautela. 323 00:15:17,220 --> 00:15:20,910 >> So per certo che non sto lavorando il mio problema set 3 più, quindi sono 324 00:15:20,910 --> 00:15:22,550 intenzione di sbarazzarsi di tutti i file. 325 00:15:22,550 --> 00:15:26,420 E so che non voglio essere chiesto ogni volta se voglio cancellare 326 00:15:26,420 --> 00:15:30,640 un file, in modo ho intenzione di rm -rf pset3. 327 00:15:30,640 --> 00:15:32,640 Non ho nemmeno chiedermi se io voleva sbarazzarsi di esso. 328 00:15:32,640 --> 00:15:33,840 Mi ha colpito ls. 329 00:15:33,840 --> 00:15:35,680 pset3 è andato. 330 00:15:35,680 --> 00:15:39,730 Ecco, questo è tutte le variazioni che si può utilizzare per sbarazzarsi di file con rm. 331 00:15:39,730 --> 00:15:43,620 >> Il comando di riga di comando che è ultima andando a molto utile per voi 332 00:15:43,620 --> 00:15:46,391 è mv, che è l'abbreviazione di movimento. 333 00:15:46,391 --> 00:15:48,960 Move è sostanzialmente equivalente a rinominare. 334 00:15:48,960 --> 00:15:53,870 Si sposta un file da una posizione a un'altra, sorgente alla destinazione. 335 00:15:53,870 --> 00:15:59,400 Vediamo dove utilizzando una potenza mossa essere utile alla finestra del terminale. 336 00:15:59,400 --> 00:16:02,070 >> Quindi sono nel mio pset1 directory, e ho notato 337 00:16:02,070 --> 00:16:03,860 qualcosa è andato un po 'sbagliato. 338 00:16:03,860 --> 00:16:08,620 Stavo lavorando al mio problema avidi, ma accidentalmente ho chiamato GReddy. 339 00:16:08,620 --> 00:16:11,380 Così, quando provo ed eseguirlo tramite check50, in realtà non funziona. 340 00:16:11,380 --> 00:16:12,630 Ho un paio di opzioni. 341 00:16:12,630 --> 00:16:16,220 Potremmo fare quello che abbiamo fatto prima, che è quello di fare una copia del file. 342 00:16:16,220 --> 00:16:23,960 Potrei copiare greddy.c a greedy.c, giusto? 343 00:16:23,960 --> 00:16:25,580 Premere Invio. 344 00:16:25,580 --> 00:16:28,180 Vedo che entrambi i file ci sono. 345 00:16:28,180 --> 00:16:36,337 E poi potrei rm, di rimuovere, greddy.c. 346 00:16:36,337 --> 00:16:37,170 Che si sbarazza di esso. 347 00:16:37,170 --> 00:16:40,920 In modo che avrebbe funzionato, dopo che confermo che voglio sbarazzarsi di esso. 348 00:16:40,920 --> 00:16:44,770 E io ho effettivamente greddy.c rinominato greedy.c. 349 00:16:44,770 --> 00:16:48,460 Ho copiato, e poi rimosso l'originale. 350 00:16:48,460 --> 00:16:50,170 >> Ma questo è un processo multi-step. 351 00:16:50,170 --> 00:16:51,670 E certamente, c'è un modo migliore. 352 00:16:51,670 --> 00:16:52,420 In realtà, non c'è. 353 00:16:52,420 --> 00:16:55,810 Quindi cerchiamo di colpire controllo L, solo per portare questo back up, 354 00:16:55,810 --> 00:16:58,680 ed elencare i contenuti di mia directory di nuovo. 355 00:16:58,680 --> 00:17:00,350 >> Quindi diciamo che, oh, ho fatto un errore. 356 00:17:00,350 --> 00:17:03,470 Io in realtà volevo davvero per chiamare quel file greddy.c. 357 00:17:03,470 --> 00:17:11,369 In un colpo solo, posso digitare spostare greedy.c a greddy.c. 358 00:17:11,369 --> 00:17:12,470 Premere Invio. 359 00:17:12,470 --> 00:17:15,210 Ed ora, non ho avuto di copiare e rimuoverlo, 360 00:17:15,210 --> 00:17:16,880 Sono appena stato in grado di rinominarlo. 361 00:17:16,880 --> 00:17:18,710 One-stop shopping. 362 00:17:18,710 --> 00:17:21,160 >> Ora, ci sono un sacco di altri utilità di base della riga di comando 363 00:17:21,160 --> 00:17:22,640 che è possibile utilizzare con la linea di comando di Linux. 364 00:17:22,640 --> 00:17:24,990 E parleremo molto di loro in futuro in CS50. 365 00:17:24,990 --> 00:17:27,948 Ma per ora, solo per i piedi bagnato con il lavoro con questo terminale 366 00:17:27,948 --> 00:17:30,540 ambiente, questi cinque comandi dovrebbe arrivare abbastanza lontano 367 00:17:30,540 --> 00:17:34,990 in navigazione intorno e lavorare con i file nel vostro IDE 368 00:17:34,990 --> 00:17:37,770 o in qualunque basato su Linux il sistema operativo che si sta utilizzando. 369 00:17:37,770 --> 00:17:40,580 >> Se siete curiosi e volete guardare avanti un po 'a un certo 370 00:17:40,580 --> 00:17:43,420 i comandi della riga di comando useremo in futuro, 371 00:17:43,420 --> 00:17:46,930 ecco una lista di una coppia di quelli più comuni. 372 00:17:46,930 --> 00:17:47,820 Sono Doug Lloyd. 373 00:17:47,820 --> 00:17:49,860 Questo è CS50. 374 00:17:49,860 --> 00:17:52,598