1 00:00:00,000 --> 00:00:05,060 >> [REPRODUCCIÓN DE MÚSICA] 2 00:00:05,060 --> 00:00:05,890 >> DOUG LLOYD: OK. 3 00:00:05,890 --> 00:00:08,680 Así que vamos a hablar de cómo utilizar la línea de comandos de Linux. 4 00:00:08,680 --> 00:00:11,860 Ahora, el CS50 IDE, o en De hecho, incluso un aparato de CS50, 5 00:00:11,860 --> 00:00:15,210 si está familiarizado con eso, o usted está tomando una versión antigua del CS50, 6 00:00:15,210 --> 00:00:17,420 es una máquina basada en la nube que corre Ubuntu, 7 00:00:17,420 --> 00:00:20,259 que es uno de los muchos sabores del sistema operativo Linux. 8 00:00:20,259 --> 00:00:22,300 Sistema operativo Linux es favorecida por los programadores, 9 00:00:22,300 --> 00:00:25,690 porque es sólo más fresco, ¿no? 10 00:00:25,690 --> 00:00:29,170 >> Muchas distribuciones modernas de Linux tener interfaces gráficas de usuario, 11 00:00:29,170 --> 00:00:33,710 que también llamamos interfaces gráficas de usuario, G-U-I, a permitir la navegación basado en el ratón fácil, 12 00:00:33,710 --> 00:00:36,920 que probablemente esté familiarizado con, si usted es un usuario de Windows o Mac, 13 00:00:36,920 --> 00:00:39,961 moviendo el puntero del ratón, hacer doble clic en los iconos, y así sucesivamente. 14 00:00:39,961 --> 00:00:42,210 Aún sin embargo, como programador, y aunque el IDE 15 00:00:42,210 --> 00:00:44,800 contiene la capacidad de hacer algo de usuario gráfica 16 00:00:44,800 --> 00:00:47,400 cosas, clic, y arrastrando, y todo eso, 17 00:00:47,400 --> 00:00:50,197 usted todavía va a utilizar su ventana de terminal bastante frecuencia. 18 00:00:50,197 --> 00:00:52,280 Y usted puede hacer muchas de las mismas tareas que puede 19 00:00:52,280 --> 00:00:53,905 hacer con un ratón con comandos de teclado. 20 00:00:53,905 --> 00:00:56,821 Y vamos a hablar un poco acerca de lo que algunos de los comandos 21 00:00:56,821 --> 00:00:58,050 son ahora. 22 00:00:58,050 --> 00:01:02,490 >> Ahora, estos comandos se pueden utilizar en cualquier operativo basado en Unix 23 00:01:02,490 --> 00:01:06,790 sistema, que incluye Linux, pero también incluye Mac OS. 24 00:01:06,790 --> 00:01:12,930 Si usted abre Terminal en tu Mac, puede utilizar estos comandos exactos. 25 00:01:12,930 --> 00:01:15,705 Windows también tiene Comando Prompt, pero algunos de los comandos 26 00:01:15,705 --> 00:01:17,871 son ligeramente diferentes, por lo no funciona en realidad, 27 00:01:17,871 --> 00:01:20,080 porque Windows no es un sistema basado en Unix. 28 00:01:20,080 --> 00:01:22,620 >> Así que echemos un vistazo a algunos de estos comandos de Linux. 29 00:01:22,620 --> 00:01:26,100 El primero que te voy a probablemente use mucho es ls. 30 00:01:26,100 --> 00:01:30,410 Esa es una l minúscula, seguida de una minúscula s, que es la abreviatura de la lista. 31 00:01:30,410 --> 00:01:33,720 Y lo que el comando list hace es que le da una lectura de todos los archivos 32 00:01:33,720 --> 00:01:35,670 y carpetas en el directorio actual. 33 00:01:35,670 --> 00:01:39,430 Así se puede ver todo lo que pueda llegar desde donde se encuentra actualmente. 34 00:01:39,430 --> 00:01:41,545 >> Así que me he abierto aquí el IDE CS50. 35 00:01:41,545 --> 00:01:44,540 Y yo voy a hacer un zoom-in en un segundo para darle un vistazo más de cerca, 36 00:01:44,540 --> 00:01:47,240 pero aquí está el panorama general de lo que el IDE se parece. 37 00:01:47,240 --> 00:01:49,580 A la izquierda, se puede ver que tenemos un árbol de archivos, que es probable que estés 38 00:01:49,580 --> 00:01:52,663 familiarizado con, doble clic, y archivos y carpetas, y todas esas cosas. 39 00:01:52,663 --> 00:01:54,694 Así que eso es todavía allí en el aparato CS50. 40 00:01:54,694 --> 00:01:57,860 En el centro de la parte superior es donde estás va a escribir su código, una vez 41 00:01:57,860 --> 00:01:58,960 hacer clic en un archivo. 42 00:01:58,960 --> 00:02:00,900 Y en la parte inferior, se tener una ventana de terminal, 43 00:02:00,900 --> 00:02:04,040 que es donde podemos ejecutar estos comandos de terminal. 44 00:02:04,040 --> 00:02:07,460 >> Voy a hacer un zoom-in y la cabeza aquí, sólo 45 00:02:07,460 --> 00:02:12,360 para demostrar que, de hecho, no puedo haga clic en los archivos y carpetas. 46 00:02:12,360 --> 00:02:17,010 Así que está claro, en donde actualmente soy, tengo dos carpetas, llamadas pset0 y pset1, 47 00:02:17,010 --> 00:02:20,520 y tres archivos, uno llamado hola, uno llamado hello.c, 48 00:02:20,520 --> 00:02:22,870 Y el uno hello.txt. 49 00:02:22,870 --> 00:02:27,100 >> Así que vamos a mover hacia abajo a la terminal ventana y conseguir una mirada más cercana. 50 00:02:27,100 --> 00:02:31,010 Así que acabamos de hablar, una vez más, sobre la hecho de que tenemos tres archivos y dos 51 00:02:31,010 --> 00:02:32,970 carpetas en el directorio actual. 52 00:02:32,970 --> 00:02:37,080 Si escribo ls, que de nuevo es el comando para listar 53 00:02:37,080 --> 00:02:40,870 el contenido de la actual directorio, y luego me golpeó Enter, 54 00:02:40,870 --> 00:02:47,220 mira lo que veo, hola, hello.c, hello.txt, pset0 y pset1. 55 00:02:47,220 --> 00:02:49,620 >> pset0 y pset1 son de color azul, para indicar 56 00:02:49,620 --> 00:02:52,420 a usted que esos son los directorios que podríamos navegar en. 57 00:02:52,420 --> 00:02:54,503 Y vamos a aprender un poco poco acerca de cómo navegar 58 00:02:54,503 --> 00:02:56,290 en directorios en un minuto. 59 00:02:56,290 --> 00:03:00,920 Y todo lo demás es de color negro, si se trata de un archivo de texto o un código fuente 60 00:03:00,920 --> 00:03:03,590 presentar, y verde, si que es un archivo ejecutable. 61 00:03:03,590 --> 00:03:06,367 Así que está claro, eso significa que yo podría ejecutar un programa llamado, hola. 62 00:03:06,367 --> 00:03:07,950 Eso es lo que significa la verde allí. 63 00:03:07,950 --> 00:03:10,080 Pero, básicamente, escribiendo el comando ls ha permitido 64 00:03:10,080 --> 00:03:13,470 yo miro todo lo que existe en mi directorio actual, que 65 00:03:13,470 --> 00:03:17,940 coincide con lo que vemos aquí, en el visualización gráfica de la misma. 66 00:03:17,940 --> 00:03:19,940 El siguiente comando podrás probablemente utilizar un poco 67 00:03:19,940 --> 00:03:24,792 es cd, minúsculas c, d minúscula, que es la abreviatura de cambio de directorio. 68 00:03:24,792 --> 00:03:27,500 Esto nos permite hacer lo que era hablando de un segundo atrás, que 69 00:03:27,500 --> 00:03:31,150 es para navegar entre directorios en el comando 70 00:03:31,150 --> 00:03:33,700 línea, en contraposición a hacer doble clic en las carpetas. 71 00:03:33,700 --> 00:03:37,250 Así que si escribimos cd y después el nombre de un directorio, 72 00:03:37,250 --> 00:03:40,890 podemos entrar en ese directorio. 73 00:03:40,890 --> 00:03:44,680 >> Dicho sea de paso, saber que el nombre del directorio actual es siempre 74 00:03:44,680 --> 00:03:48,670 punto, y el nombre del directorio un nivel por encima de donde estamos ahora, 75 00:03:48,670 --> 00:03:54,820 que es el nombre de la carpeta en que nuestra carpeta es, punto, dot-- 76 00:03:54,820 --> 00:03:56,851 o en los que nuestra carpeta es, es punto, punto. 77 00:03:56,851 --> 00:03:59,350 Y si alguna vez curiosidad por el nombre de su directorio, 78 00:03:59,350 --> 00:04:03,430 puede escribir pwd, que destaca para el directorio de trabajo actual. 79 00:04:03,430 --> 00:04:06,827 Vamos a echar un vistazo a todos ellos Ahora, en la partida de vuelta a la IDE CS50. 80 00:04:06,827 --> 00:04:08,160 Así que estoy de vuelta en mi espacio de trabajo ahora. 81 00:04:08,160 --> 00:04:11,930 Y voy a zoom-in de nuevo en el terminal, por lo que podemos echar un vistazo 82 00:04:11,930 --> 00:04:14,209 al moverse dentro del IDE. 83 00:04:14,209 --> 00:04:16,250 Así que voy a enumerar la contenido de mi directorio 84 00:04:16,250 --> 00:04:19,220 de nuevo, sólo para remolido nosotros en donde estamos. 85 00:04:19,220 --> 00:04:21,740 Así que si escribo ls, que es para la lista de nuevo, 86 00:04:21,740 --> 00:04:24,160 Veo que puedo llegar a pset0 y pset1. 87 00:04:24,160 --> 00:04:26,420 Esos son los directorios Yo puedo llegar desde aquí. 88 00:04:26,420 --> 00:04:30,400 Lo sé, porque el IDE da yo ni idea de por colorearlos azul. 89 00:04:30,400 --> 00:04:33,295 >> Digamos que quiero entrar en mi directorio pset1, 90 00:04:33,295 --> 00:04:35,310 porque estoy trabajando en el problema de ajuste 1. 91 00:04:35,310 --> 00:04:41,380 Puedo escribir cd-- de nuevo, la abreviatura de cambiar directory-- espacio, pset1. 92 00:04:41,380 --> 00:04:43,334 Y si pulsa enter, observe lo que sucede. 93 00:04:43,334 --> 00:04:45,000 No se ve como han pasado muchas cosas. 94 00:04:45,000 --> 00:04:50,510 Pero si nos fijamos en el indicador, ahora me dice que estoy en ~ / espacio de trabajo / pset1. 95 00:04:50,510 --> 00:04:55,510 He navegado en el pset1 carpeta que estaba dentro de mi área de trabajo. 96 00:04:55,510 --> 00:05:00,560 >> Y si escribo ls, veo a algunos cosas diferentes aquí, ¿verdad? 97 00:05:00,560 --> 00:05:03,810 Este no es el mismo lista que vi antes. 98 00:05:03,810 --> 00:05:05,350 He navegado en pset1. 99 00:05:05,350 --> 00:05:08,560 Y ahora, cuando escribo ls, estoy conseguir el contexto de lo que puedo 100 00:05:08,560 --> 00:05:12,600 ver desde dentro de la carpeta pset1. 101 00:05:12,600 --> 00:05:16,056 >> Ahora, voy a escribir de control l, lo que simplemente borra la pantalla. 102 00:05:16,056 --> 00:05:18,180 Y yo voy a enumerar la contenido del directorio 103 00:05:18,180 --> 00:05:18,880 de nuevo, sólo para que pueda ver. 104 00:05:18,880 --> 00:05:20,730 Sólo quería hacerle eso a despejar algunas de las cosas 105 00:05:20,730 --> 00:05:22,521 que vio abajo y para evitar que esto 106 00:05:22,521 --> 00:05:24,660 de ir demasiado lejos fuera de rango. 107 00:05:24,660 --> 00:05:28,440 >> Ahora, he dicho antes que, si quiero para navegar hasta el directorio actual, 108 00:05:28,440 --> 00:05:31,580 Puedo escribir cd espacio de puntos. 109 00:05:31,580 --> 00:05:32,080 Hit Intro. 110 00:05:32,080 --> 00:05:33,330 No hace nada, ¿verdad? 111 00:05:33,330 --> 00:05:35,480 Estoy cambiando directorios en el directorio actual. 112 00:05:35,480 --> 00:05:37,813 No siempre vas a encontrar una necesidad de un solo punto, 113 00:05:37,813 --> 00:05:39,540 pero de vez en cuando. 114 00:05:39,540 --> 00:05:41,950 >> Digamos que quiero para subir un nivel. 115 00:05:41,950 --> 00:05:44,450 Quiero volver a mi directorio espacio de trabajo. 116 00:05:44,450 --> 00:05:49,800 No puedo introducir espacio de trabajo de cd, no hay tal archivo o directorio. 117 00:05:49,800 --> 00:05:52,780 Y la razón de que- si escribo ls de un tiempo-- más 118 00:05:52,780 --> 00:05:58,060 es que no hay ningún directorio llamado espacio de trabajo en el interior de mi directorio pset1. 119 00:05:58,060 --> 00:06:00,275 Voy a limpiar mi pantalla de nuevo con el control de l. 120 00:06:00,275 --> 00:06:02,150 Recuerde lo que dije antes, sin embargo, que nos 121 00:06:02,150 --> 00:06:04,010 puede navegar de vuelta con el punto, punto. 122 00:06:04,010 --> 00:06:05,880 Ese es el nombre del directorio padre. 123 00:06:05,880 --> 00:06:10,727 Así que si escribo cd, espacio, punto, punto, y luego pulse Enter, 124 00:06:10,727 --> 00:06:11,810 ahora mira lo que pasó. 125 00:06:11,810 --> 00:06:15,250 Mi símbolo del sistema me dice que soy de vuelta en mi directorio ~ / espacio de trabajo. 126 00:06:15,250 --> 00:06:19,360 Me mudé a un nivel, gracias a punto, punto. 127 00:06:19,360 --> 00:06:23,400 >> Ahora, digamos que estoy usando un sistema operativo que está basado en Linux, 128 00:06:23,400 --> 00:06:25,440 pero no necesariamente dime donde estoy. 129 00:06:25,440 --> 00:06:28,370 Éste pasa a decirnos que Estoy en ~ / espacio de trabajo en este momento, 130 00:06:28,370 --> 00:06:29,280 derecha en el indicador. 131 00:06:29,280 --> 00:06:31,940 Pero podría ser completamente perdida en un lío de las carpetas, 132 00:06:31,940 --> 00:06:34,946 y no tengo ni idea de dónde estoy y ni idea de donde quiero volver a. 133 00:06:34,946 --> 00:06:36,320 Hay dos cosas que puedo hacer. 134 00:06:36,320 --> 00:06:40,920 >> En primer lugar, yo puedo entender dónde estoy, escribiendo pwd. 135 00:06:40,920 --> 00:06:42,720 Esa es mi directorio de trabajo actual. 136 00:06:42,720 --> 00:06:45,830 Y si pulsa enter, se me dice exactamente dónde estoy. 137 00:06:45,830 --> 00:06:49,400 Ahora / home / ubuntu es el muy lejos de decir, tilde, 138 00:06:49,400 --> 00:06:51,290 que es su directorio personal. 139 00:06:51,290 --> 00:06:56,540 Pero me dice que estoy en casa / ubuntu / área de trabajo, o ~ / espacio de trabajo. 140 00:06:56,540 --> 00:07:00,700 >> Voy a navegar hasta mi directorio pset1 de nuevo, 141 00:07:00,700 --> 00:07:02,229 y yo voy a mostrar el contenido. 142 00:07:02,229 --> 00:07:04,770 Y veo que tengo otro directorio de allí, llamó extras. 143 00:07:04,770 --> 00:07:09,020 Así que voy a cd en extras, y entonces yo voy a limpiar mi pantalla. 144 00:07:09,020 --> 00:07:11,540 >> Así que ahora, estoy bastante lejos, ¿verdad? 145 00:07:11,540 --> 00:07:13,680 ¿Y si quiero hacer una copia al espacio de trabajo de inmediato? 146 00:07:13,680 --> 00:07:15,138 Hay un par de cosas que podría hacer. 147 00:07:15,138 --> 00:07:18,750 Yo podría escribir cd, punto, punto, raya vertical, de punto, de punto, para subir un nivel y luego 148 00:07:18,750 --> 00:07:19,640 otro nivel. 149 00:07:19,640 --> 00:07:21,090 Pero eso es un poco molesto. 150 00:07:21,090 --> 00:07:24,990 >> Así que si alguna vez quiero volver a sólo mi directorio home, tilde, 151 00:07:24,990 --> 00:07:27,690 Puedo escribir cd sin nada después de ella. 152 00:07:27,690 --> 00:07:29,224 Cd, Intro. 153 00:07:29,224 --> 00:07:30,140 Y ahora, estoy en tilde. 154 00:07:30,140 --> 00:07:34,310 Y si quiero llegar al área de trabajo, Solo puedo escribir espacio de trabajo cd. 155 00:07:34,310 --> 00:07:36,770 Y así es como se trabaja directorios cambiantes 156 00:07:36,770 --> 00:07:42,080 dentro del IDE CS50 o cualquier Linux sistema operativo en la línea de comandos. 157 00:07:42,080 --> 00:07:42,580 Correcto. 158 00:07:42,580 --> 00:07:45,610 El próximo que podría muy útil es mkdir, 159 00:07:45,610 --> 00:07:48,709 que es corto para hacer un directorio, si tengo que crear una nueva carpeta. 160 00:07:48,709 --> 00:07:50,750 Si usted está familiarizado con el sistema operativo GUI, 161 00:07:50,750 --> 00:07:51,820 es posible que haga clic derecho. 162 00:07:51,820 --> 00:07:54,500 Y entonces, cuando el menú contextual aparece, seleccione Nueva carpeta. 163 00:07:54,500 --> 00:07:56,250 Esa es probablemente la forma lo has hecho antes. 164 00:07:56,250 --> 00:08:00,979 Pero también podemos crear directorios en la línea de comandos. 165 00:08:00,979 --> 00:08:02,020 Así que estamos de vuelta en el IDE. 166 00:08:02,020 --> 00:08:08,020 Voy zoom-in en la terminal y listar el contenido de mi directorio 167 00:08:08,020 --> 00:08:11,882 de nuevo, sólo para darnos un marco de referencia. 168 00:08:11,882 --> 00:08:14,340 Digamos que, ahora, no tengo Terminó de trabajar en conjunto de problemas 0 169 00:08:14,340 --> 00:08:15,580 y el problema de conjunto 1. 170 00:08:15,580 --> 00:08:19,390 Así que quiero crear un nuevo directorio para trabajar en un problema para el conjunto 2. 171 00:08:19,390 --> 00:08:20,420 ¿Cómo puedo hacer eso? 172 00:08:20,420 --> 00:08:24,132 >> Bueno, de nuevo, pude hacer clic derecho en el lado izquierdo allí y elija Nueva carpeta 173 00:08:24,132 --> 00:08:25,340 y crear un directorio PSet2. 174 00:08:25,340 --> 00:08:26,240 Eso funcionaría también. 175 00:08:26,240 --> 00:08:28,615 Pero entonces yo también lo hago en el línea de comandos con bastante rapidez, 176 00:08:28,615 --> 00:08:35,049 escribiendo mkdir, me espacio-- escrito en n, pero- espacio PSet2. 177 00:08:35,049 --> 00:08:38,659 Si me golpeó Enter y luego enumero la contenido de mi directorio nuevo, 178 00:08:38,659 --> 00:08:40,710 Veo que, mira, ahora Tengo una carpeta PSet2. 179 00:08:40,710 --> 00:08:43,110 Y puedo navegar en que el uso de cd y hacer 180 00:08:43,110 --> 00:08:45,614 todo el trabajo que tiene que hacer para PSet2. 181 00:08:45,614 --> 00:08:48,530 Por cierto, voy a estallar sobre aquí realmente rápidamente al árbol de archivos. 182 00:08:48,530 --> 00:08:53,494 Y se puede ver que, también, en el Explorador de archivos gráficos, 183 00:08:53,494 --> 00:08:56,160 podemos ver que el directorio PSet2 También se ha creado allí. 184 00:08:56,160 --> 00:08:58,537 Y puedo navegar a la misma, mediante la GUI también. 185 00:08:58,537 --> 00:09:00,870 La próxima vez y eso es probablemente va a venir muy bien 186 00:09:00,870 --> 00:09:03,650 es cp, que es la abreviatura para la copia. 187 00:09:03,650 --> 00:09:06,960 Copie, a diferencia de todos los demás comandos que hemos visto antes, 188 00:09:06,960 --> 00:09:11,800 toma dos argumentos, una fuente, la nombre del archivo que desea copiar, 189 00:09:11,800 --> 00:09:15,810 y un destino, donde quiere copiar el archivo. 190 00:09:15,810 --> 00:09:19,490 Es bastante fácil de copiar un archivo, por lo que vamos a hacer eso. 191 00:09:19,490 --> 00:09:20,640 >> Así que estamos de vuelta en el IDE. 192 00:09:20,640 --> 00:09:24,540 Voy a enumerar los contenidos de mi directorio actual con ls. 193 00:09:24,540 --> 00:09:28,310 Ahora, digamos que quiero para hacer una copia de hello.txt. 194 00:09:28,310 --> 00:09:32,120 Una vez más, desde el árbol de archivos en el a la izquierda, la interfaz gráfica, 195 00:09:32,120 --> 00:09:35,969 Podía hacer clic derecho sobre hello.txt, hacer una copia, pega la copia. 196 00:09:35,969 --> 00:09:38,260 Pero puedo hacerlo bastante rápido en la línea de comandos también. 197 00:09:38,260 --> 00:09:42,520 >> Digamos que quiero copiar hello.txt a hi.txt. 198 00:09:42,520 --> 00:09:45,850 Puedo cp, espacio, hello.txt. 199 00:09:45,850 --> 00:09:48,850 Esa es mi archivo de origen, así que por eso Voy a elegir que uno primero. 200 00:09:48,850 --> 00:09:51,058 Y luego tengo que nombrar el archivo de destino, hi.txt. 201 00:09:51,058 --> 00:09:53,690 202 00:09:53,690 --> 00:09:54,620 Golpeé Intro. 203 00:09:54,620 --> 00:09:57,930 Y si enumero el contenido de mi directorio nuevo, no está hi.txt. 204 00:09:57,930 --> 00:09:59,220 Hice una copia de la misma. 205 00:09:59,220 --> 00:10:01,090 Y de hecho, si me fui en hi.txt, pude 206 00:10:01,090 --> 00:10:04,030 ver que sería una exacta duplicados de todo lo que 207 00:10:04,030 --> 00:10:08,330 existido en mi archivo hello.txt. 208 00:10:08,330 --> 00:10:09,790 >> Así que así es como se copia un archivo. 209 00:10:09,790 --> 00:10:12,680 Pero lo que si quieres copiar un directorio completo? 210 00:10:12,680 --> 00:10:16,510 Así que por un segundo, vamos a echar un vistazo a lo que hay en mi directorio pset0. 211 00:10:16,510 --> 00:10:23,950 Si yo pset0 cd y la lista de los contenidos, Tengo un directorio llamado, muestra, 212 00:10:23,950 --> 00:10:26,252 y un archivo de cero, scratch.sb2. 213 00:10:26,252 --> 00:10:27,210 Así que eso es bueno saberlo. 214 00:10:27,210 --> 00:10:29,800 Así que vamos a aclarar la pantalla, y voy a volver 215 00:10:29,800 --> 00:10:32,870 a mi directorio de espacio de trabajo durante un segundo. 216 00:10:32,870 --> 00:10:36,630 >> Digamos que, ahora, quiero hacer una copia de mi directorio pset0. 217 00:10:36,630 --> 00:10:42,940 No puedo decir pset0 cp pset3, por ejemplo. 218 00:10:42,940 --> 00:10:46,220 Usted recibe este mensaje extraño, omitiendo directorio pset0. 219 00:10:46,220 --> 00:10:47,439 ¿Por qué aparece el mensaje? 220 00:10:47,439 --> 00:10:49,730 Bueno, resulta que, cuando usted tiene un directorio que 221 00:10:49,730 --> 00:10:53,150 tiene otras cosas en el interior de la misma, el comando cp en realidad no 222 00:10:53,150 --> 00:10:55,590 necesariamente saber qué hacer con ella. 223 00:10:55,590 --> 00:10:59,670 >> Tenemos que explícitamente decirle a Linux, la terminal, 224 00:10:59,670 --> 00:11:03,720 Quiero que copiar el directorio pset0 y copia 225 00:11:03,720 --> 00:11:07,530 cada carpeta que existe dentro de la misma y todos los archivos que 226 00:11:07,530 --> 00:11:08,750 existe dentro de ella. 227 00:11:08,750 --> 00:11:13,270 En otras palabras, te necesito recursivamente bucear en pset0 228 00:11:13,270 --> 00:11:15,660 y hacer una copia de todo lo que existe. 229 00:11:15,660 --> 00:11:25,280 >> Si yo quiero hacer eso, lo que yo puedo hacer es cp-r, por recursiva, pset3 pset0. 230 00:11:25,280 --> 00:11:26,850 Hit Intro. 231 00:11:26,850 --> 00:11:29,290 Ahora, si enumero la contenido de mi directorio, 232 00:11:29,290 --> 00:11:32,180 Veo ahí está el pset3 directorio que puedo trabajar. 233 00:11:32,180 --> 00:11:36,990 Y si cd I en pset3 ahora y a continuación, una lista del contenido, mira, 234 00:11:36,990 --> 00:11:39,594 no hay muestra y scratch.sb2 de nuevo. 235 00:11:39,594 --> 00:11:40,510 Así que eso es muy bueno. 236 00:11:40,510 --> 00:11:43,819 Así que así es como se puede copiar una entera directorio, y no sólo un único archivo. 237 00:11:43,819 --> 00:11:45,860 Así que si usted desea copiar un directorio, sólo recuerda 238 00:11:45,860 --> 00:11:49,830 a colocar la bandera -r cuando estás trabajando con el comando cp. 239 00:11:49,830 --> 00:11:50,330 Correcto. 240 00:11:50,330 --> 00:11:52,320 Así que me he copiado un archivo, pero Lo he hecho por error. 241 00:11:52,320 --> 00:11:53,695 Y ahora, quiero deshacerme de él. 242 00:11:53,695 --> 00:11:54,850 ¿Cómo puedo hacer eso? 243 00:11:54,850 --> 00:11:56,830 De nuevo, si usted está familiarizado con una interfaz gráfica de usuario, 244 00:11:56,830 --> 00:11:58,310 usted puede hacer clic derecho y simplemente elija Eliminar. 245 00:11:58,310 --> 00:12:00,630 Y que va a enviar a la basura o la Papelera de reciclaje. 246 00:12:00,630 --> 00:12:03,320 Pero en la línea de comandos, que Sólo puede escribir rm, para eliminar, 247 00:12:03,320 --> 00:12:05,580 y luego el nombre de la archivamos queremos eliminar. 248 00:12:05,580 --> 00:12:08,614 >> Ahora, rm es muy cuidadoso. 249 00:12:08,614 --> 00:12:11,280 Hace un montón de de doble control, para asegurarse de que en realidad 250 00:12:11,280 --> 00:12:12,377 quiere eliminar el archivo. 251 00:12:12,377 --> 00:12:15,460 No quiere cometer ningún error, porque no hay papelera de reciclaje aquí. 252 00:12:15,460 --> 00:12:17,010 Una vez borramos un archivo, se ha ido. 253 00:12:17,010 --> 00:12:18,710 Y realmente no hay manera de recuperarlo. 254 00:12:18,710 --> 00:12:20,730 Así que tenemos que ser muy cuidado, y así rm 255 00:12:20,730 --> 00:12:23,110 va a ser muy cuidadoso para nosotros. 256 00:12:23,110 --> 00:12:27,120 >> Así que vamos a volver al IDE y deshacerse de ese archivo hi.txt 257 00:12:27,120 --> 00:12:29,640 que creé hace un minuto con la copia. 258 00:12:29,640 --> 00:12:30,560 Así que estamos en el IDE. 259 00:12:30,560 --> 00:12:33,180 Y enumero el contenido de mi directorio de nuevo, sólo para darnos un poco de contexto. 260 00:12:33,180 --> 00:12:36,500 Quiero decir, se puede ver que hay hi.txt, que creé hace un rato. 261 00:12:36,500 --> 00:12:38,196 Ahora, quiero deshacerme de él. 262 00:12:38,196 --> 00:12:38,820 ¿Cómo lo hago? 263 00:12:38,820 --> 00:12:39,810 >> Una vez más, al igual rm. 264 00:12:39,810 --> 00:12:46,220 Así que puedo escribir hi.txt rm y pulsa Enter. 265 00:12:46,220 --> 00:12:47,970 Y no ser rm mucho cuidado para nosotros 266 00:12:47,970 --> 00:12:50,178 y asegurarse de que en realidad querer eliminar este archivo. 267 00:12:50,178 --> 00:12:52,784 ¿Realmente desea eliminar hi.txt archivo vacío regular? 268 00:12:52,784 --> 00:12:55,200 Eso es igual que un operativo sistema, como Windows o Mac, 269 00:12:55,200 --> 00:12:56,310 que podría ser familiarizados con apareciendo 270 00:12:56,310 --> 00:12:58,770 esa caja dice son realmente Seguro que quieres hacer esto. 271 00:12:58,770 --> 00:13:01,228 >> Estoy bastante seguro de que quiero esto, así que voy a escribir, sí-- 272 00:13:01,228 --> 00:13:04,390 O podría también acaba escriba Y- y pulsa Enter. 273 00:13:04,390 --> 00:13:08,620 Y si enumero el contenido de mi Directorio de nuevo, hi.txt se ha ido. 274 00:13:08,620 --> 00:13:10,000 No está mal, ¿no? 275 00:13:10,000 --> 00:13:12,410 Vamos pulse Control L, justo para deshacerse de todas estas cosas 276 00:13:12,410 --> 00:13:14,900 y hacernos volver al la parte superior de la pantalla. 277 00:13:14,900 --> 00:13:18,520 >> Ahora, hay una manera de rm cortocircuito, por lo 278 00:13:18,520 --> 00:13:20,090 que no nos pide esa pregunta. 279 00:13:20,090 --> 00:13:22,060 Realmente sabemos que queremos para deshacerse de ese archivo, 280 00:13:22,060 --> 00:13:23,490 y ni siquiera queremos que se hizo la pregunta. 281 00:13:23,490 --> 00:13:24,720 ¿Cómo lo hacemos? 282 00:13:24,720 --> 00:13:27,180 Bueno, podemos especificar un indicador adicional, al igual que 283 00:13:27,180 --> 00:13:30,400 hizo con cp donde podría añadir la bandera -r, 284 00:13:30,400 --> 00:13:32,800 copiar de forma recursiva en un directorio. 285 00:13:32,800 --> 00:13:35,630 Hay otra bandera para rm, que es -f, 286 00:13:35,630 --> 00:13:39,470 que es a la fuerza rm para hacer exactamente lo que estamos diciendo es que hacer. 287 00:13:39,470 --> 00:13:44,610 >> Así que digamos que, ahora, quiero para deshacerse de mi archivo hello.txt. 288 00:13:44,610 --> 00:13:46,490 No quiero que uno tampoco. 289 00:13:46,490 --> 00:13:47,370 ¿Que puedo hacer? 290 00:13:47,370 --> 00:13:54,710 Bueno, puedo rm hello.txt -f. 291 00:13:54,710 --> 00:13:57,530 ¿Qué crees que es va a pasar aquí? 292 00:13:57,530 --> 00:13:58,030 Se fue. 293 00:13:58,030 --> 00:13:59,363 Ni siquiera me haga la pregunta. 294 00:13:59,363 --> 00:14:03,600 Y de hecho, si enumero los contenidos de mi directorio de nuevo, se ha ido. 295 00:14:03,600 --> 00:14:05,750 No hay deshacer aquí. 296 00:14:05,750 --> 00:14:09,554 hello.txt se ha ido, y yo no era incluso se le preguntó si quería eliminarlo. 297 00:14:09,554 --> 00:14:11,595 ¿Y si quiero deshacerme de un directorio completo? 298 00:14:11,595 --> 00:14:14,180 299 00:14:14,180 --> 00:14:17,039 La forma de hacerlo que es muy similar a copiar. 300 00:14:17,039 --> 00:14:19,080 Si desea eliminar un directorio, no lo hace solo 301 00:14:19,080 --> 00:14:22,121 quiere eliminar el directorio, que desea para borrar todo el interior de la misma. 302 00:14:22,121 --> 00:14:26,250 Y por lo que utilizar -r, a recursiva eliminar un directorio. 303 00:14:26,250 --> 00:14:28,600 >> Así que vamos a rm PSet2 -r. 304 00:14:28,600 --> 00:14:31,870 No estoy realmente trabajando en PSet2, para que pueda deshacerse de ese directorio. 305 00:14:31,870 --> 00:14:33,040 Golpeé Intro. 306 00:14:33,040 --> 00:14:35,050 ¿Quiero quitar el directorio, PSet2? 307 00:14:35,050 --> 00:14:37,160 Sí. 308 00:14:37,160 --> 00:14:41,150 Y si enumero los contenidos de mi directorio nuevo, se ha ido. 309 00:14:41,150 --> 00:14:41,650 ¿Correcto? 310 00:14:41,650 --> 00:14:43,739 >> Una variación más sobre este tema. 311 00:14:43,739 --> 00:14:46,280 Así que voy a limpiar la pantalla de nuevo, poner todo en la parte superior. 312 00:14:46,280 --> 00:14:47,420 Hit ls. 313 00:14:47,420 --> 00:14:49,890 Ahora, quiero deshacerme de mi directorio pset3, 314 00:14:49,890 --> 00:14:52,810 y yo realmente sé que quiero deshacerse de mi directorio pset3. 315 00:14:52,810 --> 00:15:00,120 Puedo recursiva y la fuerza quitar mi directorio pset3. 316 00:15:00,120 --> 00:15:03,900 >> Ahora, usted va a ser realmente cuidado cuando usted está utilizando rm -rf. 317 00:15:03,900 --> 00:15:06,784 Como programar más, va a ser algo que usted acaba de hacer muy rápidamente. 318 00:15:06,784 --> 00:15:08,200 Y de hecho, lo hago todo el tiempo. 319 00:15:08,200 --> 00:15:10,380 Pero puede conducir a una cierta consecuencias desastrosas, 320 00:15:10,380 --> 00:15:12,340 si accidentalmente eliminar las cosas mal. 321 00:15:12,340 --> 00:15:15,089 Así que quiero que seas consciente de que esta es una opción disponible para usted, 322 00:15:15,089 --> 00:15:17,220 pero utilizarlo con moderación, y usarlo con precaución. 323 00:15:17,220 --> 00:15:20,910 >> Sé que es un hecho, no estoy trabajando en mi conjunto de problemas 3 más, así que estoy 324 00:15:20,910 --> 00:15:22,550 va a deshacerse de todos esos archivos. 325 00:15:22,550 --> 00:15:26,420 Y sé que no quiero que se le pregunte cada vez si quiero eliminar 326 00:15:26,420 --> 00:15:30,640 un archivo, así que voy a rm -rf pset3. 327 00:15:30,640 --> 00:15:32,640 Ni siquiera preguntarme si yo quería deshacerse de él. 328 00:15:32,640 --> 00:15:33,840 Golpeé ls. 329 00:15:33,840 --> 00:15:35,680 pset3 se ha ido. 330 00:15:35,680 --> 00:15:39,730 Así que eso es todas las variaciones que puede utilizar para deshacerse de los archivos con rm. 331 00:15:39,730 --> 00:15:43,620 >> El comando de línea de comandos que es la última ir a bastante útil para usted 332 00:15:43,620 --> 00:15:46,391 es mv, que es la abreviatura de movimiento. 333 00:15:46,391 --> 00:15:48,960 Move es básicamente equivalente a cambiar el nombre. 334 00:15:48,960 --> 00:15:53,870 Se mueve un archivo de un lugar a otra, el origen al destino. 335 00:15:53,870 --> 00:15:59,400 Vamos a ver, donde el uso de un poder movimiento ser útil en la ventana de terminal. 336 00:15:59,400 --> 00:16:02,070 >> Así que estoy en mi pset1 directorio, y me he dado cuenta 337 00:16:02,070 --> 00:16:03,860 algo ha ido un poco mal. 338 00:16:03,860 --> 00:16:08,620 Yo estaba trabajando en mi problema codicioso, pero accidentalmente lo nombré GReddy. 339 00:16:08,620 --> 00:16:11,380 Así que cuando trato de ejecutar a través de check50, en realidad no funciona. 340 00:16:11,380 --> 00:16:12,630 Tengo un par de opciones. 341 00:16:12,630 --> 00:16:16,220 Podríamos hacer lo que hemos hecho antes, que es hacer una copia del archivo. 342 00:16:16,220 --> 00:16:23,960 Pude copiar greddy.c a greedy.c, ¿verdad? 343 00:16:23,960 --> 00:16:25,580 Hit Intro. 344 00:16:25,580 --> 00:16:28,180 Veo que ambos archivos están ahí. 345 00:16:28,180 --> 00:16:36,337 Y entonces yo podría RM, para eliminar, greddy.c. 346 00:16:36,337 --> 00:16:37,170 Que se deshace de él. 347 00:16:37,170 --> 00:16:40,920 Así que quiere trabajar, después de que confirmo que quiero deshacerme de él. 348 00:16:40,920 --> 00:16:44,770 Y efectivamente tengo greddy.c renombrado a greedy.c. 349 00:16:44,770 --> 00:16:48,460 Lo copié, y luego eliminado el original. 350 00:16:48,460 --> 00:16:50,170 >> Pero eso es un proceso de múltiples pasos. 351 00:16:50,170 --> 00:16:51,670 Y, ciertamente, no hay una mejor manera. 352 00:16:51,670 --> 00:16:52,420 De hecho, no existe. 353 00:16:52,420 --> 00:16:55,810 Así que vamos a golpear Control de L, sólo para llevar esta copia de seguridad, 354 00:16:55,810 --> 00:16:58,680 y mostrar el contenido de mi directorio de nuevo. 355 00:16:58,680 --> 00:17:00,350 >> Así que digamos que, oh, he cometido un error. 356 00:17:00,350 --> 00:17:03,470 De hecho, me quería llamar a ese archivo greddy.c. 357 00:17:03,470 --> 00:17:11,369 De un solo golpe, puedo escribir mover greedy.c a greddy.c. 358 00:17:11,369 --> 00:17:12,470 Hit Intro. 359 00:17:12,470 --> 00:17:15,210 Y ahora, yo no tenía copiar y eliminarlo, 360 00:17:15,210 --> 00:17:16,880 Yo sólo era capaz de cambiar su nombre. 361 00:17:16,880 --> 00:17:18,710 Uno para de comprar. 362 00:17:18,710 --> 00:17:21,160 >> Ahora, hay un montón de otros servicios básicos de línea de comandos 363 00:17:21,160 --> 00:17:22,640 que se puede utilizar con la línea de comandos de Linux. 364 00:17:22,640 --> 00:17:24,990 Y vamos a estar discutiendo mucho de ellos en el futuro en el CS50. 365 00:17:24,990 --> 00:17:27,948 Pero por ahora, sólo conseguir sus pies húmeda con el trabajo con este terminal 366 00:17:27,948 --> 00:17:30,540 ambiente, estos cinco comandos debe conseguirle bastante lejos 367 00:17:30,540 --> 00:17:34,990 en la navegación de la vuelta y trabajar con archivos en su IDE 368 00:17:34,990 --> 00:17:37,770 o en lo que sea basado en Linux sistema operativo que esté utilizando. 369 00:17:37,770 --> 00:17:40,580 >> Si tienes curiosidad y quieres mirar hacia adelante un poco en algún 370 00:17:40,580 --> 00:17:43,420 de los comandos de la línea de comandos que va a utilizar en el futuro, 371 00:17:43,420 --> 00:17:46,930 aquí tienes una lista de una pareja de los más comunes. 372 00:17:46,930 --> 00:17:47,820 Soy Doug Lloyd. 373 00:17:47,820 --> 00:17:49,860 Esto es CS50. 374 00:17:49,860 --> 00:17:52,598