1 00:00:00,000 --> 00:00:05,060 >> [音乐播放] 2 00:00:05,060 --> 00:00:05,890 >> 道格·劳埃德:OK。 3 00:00:05,890 --> 00:00:08,680 因此,让我们来谈谈如何 使用Linux命令行。 4 00:00:08,680 --> 00:00:11,860 现在,CS50 IDE,或 事实上,即使是CS50家电, 5 00:00:11,860 --> 00:00:15,210 如果你熟悉或 你服用CS50的是旧版本, 6 00:00:15,210 --> 00:00:17,420 是一个基于云的机 它运行Ubuntu的, 7 00:00:17,420 --> 00:00:20,259 这是众多风格中的一种 的Linux操作系统。 8 00:00:20,259 --> 00:00:22,300 Linux操作系统是 程序员的青睐, 9 00:00:22,300 --> 00:00:25,690 因为它只是转凉,对吗? 10 00:00:25,690 --> 00:00:29,170 >> 许多现代的Linux发行版 具有图形用户界面, 11 00:00:29,170 --> 00:00:33,710 我们也呼吁图形用户界面,G-U-I,至 便于鼠标导航, 12 00:00:33,710 --> 00:00:36,920 你可能熟悉, 如果你是一个Windows或Mac用户, 13 00:00:36,920 --> 00:00:39,961 在你的鼠标移动, 上的图标双击,等等。 14 00:00:39,961 --> 00:00:42,210 不过尽管如此,作为一个程序员, 并且即使IDE 15 00:00:42,210 --> 00:00:44,800 包含能力 做一些图形用户 16 00:00:44,800 --> 00:00:47,400 的东西,点击, 拖,和所有, 17 00:00:47,400 --> 00:00:50,197 你仍然在使用 终端窗口相当频繁。 18 00:00:50,197 --> 00:00:52,280 你可以做很多的 同样的任务,你可以 19 00:00:52,280 --> 00:00:53,905 做一个鼠标与键盘命令。 20 00:00:53,905 --> 00:00:56,821 我们要谈一点点 一些这些命令是什么 21 00:00:56,821 --> 00:00:58,050 现在是正确的。 22 00:00:58,050 --> 00:01:02,490 >> 现在,可以使用这些命令 在任何基于Unix的操作系统 23 00:01:02,490 --> 00:01:06,790 系统,该系统包括Linux中, 还包括的Mac OS。 24 00:01:06,790 --> 00:01:12,930 如果你打开​​终端在Mac上, 您可以使用这些精确的命令。 25 00:01:12,930 --> 00:01:15,705 Windows还具有命令 提示,但一些命令 26 00:01:15,705 --> 00:01:17,871 略有不同,所以 它实际上并没有正常工作, 27 00:01:17,871 --> 00:01:20,080 因为Windows是不是 基于Unix的系统。 28 00:01:20,080 --> 00:01:22,620 >> 因此,让我们来看看一些 这些Linux的命令。 29 00:01:22,620 --> 00:01:26,100 第一个,你会 可能使用了很多的LS。 30 00:01:26,100 --> 00:01:30,410 这是一个小写的L,其次是 小写的s,这是短期的名单。 31 00:01:30,410 --> 00:01:33,720 什么list命令的作用是它 给你所有的文件的读出 32 00:01:33,720 --> 00:01:35,670 而在当前目录中的文件夹。 33 00:01:35,670 --> 00:01:39,430 所以你可以看到一切你可以 获得从您当前所在。 34 00:01:39,430 --> 00:01:41,545 >> 所以,我已经打开了这里的CS50 IDE。 35 00:01:41,545 --> 00:01:44,540 而且我要放大,在一 第二个给你仔细看看, 36 00:01:44,540 --> 00:01:47,240 但这里的总体情况 什么样的IDE样子。 37 00:01:47,240 --> 00:01:49,580 在左边,你可以看到,我们有 文件树,你可能 38 00:01:49,580 --> 00:01:52,663 熟悉,双击,和 文件和文件夹,和所有的东西。 39 00:01:52,663 --> 00:01:54,694 所以这是仍然存在 在CS50设备。 40 00:01:54,694 --> 00:01:57,860 在中心的顶部就是你 要编写代码,一旦 41 00:01:57,860 --> 00:01:58,960 你点击一个文件。 42 00:01:58,960 --> 00:02:00,900 和底部,我们 有一个终端窗口, 43 00:02:00,900 --> 00:02:04,040 这是我们可以执行 这些终端命令。 44 00:02:04,040 --> 00:02:07,460 >> 我要放大,在 和头部在这里,只 45 00:02:07,460 --> 00:02:12,360 告诉你,其实,我可以 点击这些文件和文件夹。 46 00:02:12,360 --> 00:02:17,010 所以很明显,在那里我目前,我有 两个文件夹,名为pset0和PSET1, 47 00:02:17,010 --> 00:02:20,520 和三个文件,一个叫 你好,一个叫hello.c的, 48 00:02:20,520 --> 00:02:22,870 和一个叫hello.txt的。 49 00:02:22,870 --> 00:02:27,100 >> 因此,让我们向下移动到终端 窗口并获得一探究竟。 50 00:02:27,100 --> 00:02:31,010 所以,我们刚才也谈到,再次,关于 事实是,我们有三个文件和两个 51 00:02:31,010 --> 00:02:32,970 文件夹在当前目录。 52 00:02:32,970 --> 00:02:37,080 如果我输入ls,这再次 就是命令列出 53 00:02:37,080 --> 00:02:40,870 当前的内容 目录下,然后我敲回车, 54 00:02:40,870 --> 00:02:47,220 看看我看到的,打招呼,hello.c中, hello.txt的,pset0和PSET1。 55 00:02:47,220 --> 00:02:49,620 >> pset0和PSET1是 蓝色,以表示 56 00:02:49,620 --> 00:02:52,420 你,这些都是目录 我们可以导航到。 57 00:02:52,420 --> 00:02:54,503 我们将学习一点 有关如何定位位 58 00:02:54,503 --> 00:02:56,290 成在一分钟内的目录。 59 00:02:56,290 --> 00:03:00,920 和所有其他的事情是有色黑色, 如果它是一个文本文件或源代码 60 00:03:00,920 --> 00:03:03,590 文件,和绿色,如果 这是一个可执行文件。 61 00:03:03,590 --> 00:03:06,367 所以很明显,这意味着,我 可以运行一个名为程序,你好。 62 00:03:06,367 --> 00:03:07,950 这就是绿色的一个人也没有意思。 63 00:03:07,950 --> 00:03:10,080 但基本上,键入 ls命令允许 64 00:03:10,080 --> 00:03:13,470 我看一切存在 在我的当前目录中,这 65 00:03:13,470 --> 00:03:17,940 符合我们在这里看到,在 的相同的图形显示。 66 00:03:17,940 --> 00:03:19,940 下一个命令,你会 可能使用相当多 67 00:03:19,940 --> 00:03:24,792 是CD,小写字母c,小写研发, 这是短期改变目录。 68 00:03:24,792 --> 00:03:27,500 这使我们能够做什么,我是 说起一秒钟前,这 69 00:03:27,500 --> 00:03:31,150 是间导航 在命令目录 70 00:03:31,150 --> 00:03:33,700 线,而不是 在文件夹双击。 71 00:03:33,700 --> 00:03:37,250 因此,如果我们键入CD,然后 一个目录的名称, 72 00:03:37,250 --> 00:03:40,890 我们可以进入该目录。 73 00:03:40,890 --> 00:03:44,680 >> 顺便说一句,知道这个名字 当前目录是永远 74 00:03:44,680 --> 00:03:48,670 点,和所述目录的名称 上述一个我们现在的水平, 75 00:03:48,670 --> 00:03:54,820 那就是在文件夹的名称 其中我们的文件夹,点,dot-- 76 00:03:54,820 --> 00:03:56,851 或者在我们的文件夹,是圆点,圆点。 77 00:03:56,851 --> 00:03:59,350 如果你曾经好奇 您目录的名称, 78 00:03:59,350 --> 00:04:03,430 您可以键入PWD,它代表 对于当前的工作目录。 79 00:04:03,430 --> 00:04:06,827 我们将看看所有这些 现在,通过回笼到CS50 IDE。 80 00:04:06,827 --> 00:04:08,160 所以,我回到我的工作区了。 81 00:04:08,160 --> 00:04:11,930 我会放大,在再次上 终端,所以我们可以来看看 82 00:04:11,930 --> 00:04:14,209 在IDE中走动。 83 00:04:14,209 --> 00:04:16,250 所以,我要列出 我的目录内容 84 00:04:16,250 --> 00:04:19,220 再次,只是为了重新研磨 我们在哪里了。 85 00:04:19,220 --> 00:04:21,740 所以,如果我输入ls,这 对于列表中再次, 86 00:04:21,740 --> 00:04:24,160 我看到,我能得到pset0和PSET1。 87 00:04:24,160 --> 00:04:26,420 这些都是目录 我可以从这里得到。 88 00:04:26,420 --> 00:04:30,400 我知道,因为IDE提供 我一个线索由着色蓝。 89 00:04:30,400 --> 00:04:33,295 >> 比方说,我想 进入我的PSET1目录, 90 00:04:33,295 --> 00:04:35,310 因为我工作的习题集1。 91 00:04:35,310 --> 00:04:41,380 我可以输入cd--再次,简称 改变directory--空间,PSET1。 92 00:04:41,380 --> 00:04:43,334 如果我敲回车,看到发生了什么。 93 00:04:43,334 --> 00:04:45,000 它看起来并不像发生了不少事情。 94 00:04:45,000 --> 00:04:50,510 但是,如果你看一下提示,现在 告诉我,我在〜/工作区/ PSET1。 95 00:04:50,510 --> 00:04:55,510 我已经航行到PSET1 文件夹是我的工作空间内。 96 00:04:55,510 --> 00:05:00,560 >> 如果我输入ls,我看到一些 不同的东西在这里,对不对? 97 00:05:00,560 --> 00:05:03,810 这是不一样的 我以前看到列表。 98 00:05:03,810 --> 00:05:05,350 我已经航行到PSET1。 99 00:05:05,350 --> 00:05:08,560 所以现在,当我输入ls,我 得到什么样的情况下,我可以 100 00:05:08,560 --> 00:05:12,600 看到来自PSET1文件夹中。 101 00:05:12,600 --> 00:05:16,056 >> 现在,我要键入控制 L,这只是清除屏幕。 102 00:05:16,056 --> 00:05:18,180 而且我要列出 该目录的内容 103 00:05:18,180 --> 00:05:18,880 再次,只是让你可以看到。 104 00:05:18,880 --> 00:05:20,730 我只是想这样对待 清除掉一些东西 105 00:05:20,730 --> 00:05:22,521 你看见楼下 并且,以防止这种 106 00:05:22,521 --> 00:05:24,660 从去太远超出范围。 107 00:05:24,660 --> 00:05:28,440 >> 现在,我在前面提到,如果我想 导航到当前目录, 108 00:05:28,440 --> 00:05:31,580 我可以输入CD的空间点。 109 00:05:31,580 --> 00:05:32,080 回车。 110 00:05:32,080 --> 00:05:33,330 它没有做任何事情,对不对? 111 00:05:33,330 --> 00:05:35,480 我改变了目录 当前目录。 112 00:05:35,480 --> 00:05:37,813 你不会总是会 发现需要一种单一的点, 113 00:05:37,813 --> 00:05:39,540 但是你会偶尔为之。 114 00:05:39,540 --> 00:05:41,950 >> 比方说,我想 到上一级。 115 00:05:41,950 --> 00:05:44,450 我想找回 我的工作区目录。 116 00:05:44,450 --> 00:05:49,800 我不能键入cd工作区, 有没有这样的文件或目录。 117 00:05:49,800 --> 00:05:52,780 而对于that--的原因 如果我输入ls多了一个时间 - 118 00:05:52,780 --> 00:05:58,060 是,有没有所谓的目录 工作区我的PSET1目录的内部。 119 00:05:58,060 --> 00:06:00,275 我要清楚我 与对照L再次筛选。 120 00:06:00,275 --> 00:06:02,150 还记得我说的 此前,虽然,我们 121 00:06:02,150 --> 00:06:04,010 可以导航回用点,点。 122 00:06:04,010 --> 00:06:05,880 这是父目录的名称。 123 00:06:05,880 --> 00:06:10,727 所以,如果我键入cd,空格,点, 点,然后按Enter键, 124 00:06:10,727 --> 00:06:11,810 现在就来看看发生了什么事。 125 00:06:11,810 --> 00:06:15,250 我的命令提示符告诉我,我 早在我的〜/ workspace目录。 126 00:06:15,250 --> 00:06:19,360 我搬到了一个级别, 多亏点,点。 127 00:06:19,360 --> 00:06:23,400 >> 现在,让我们说,我使用的是 操作系统是基于Linux, 128 00:06:23,400 --> 00:06:25,440 但并不一定 告诉我,我在哪里。 129 00:06:25,440 --> 00:06:28,370 这一次发生在告诉我们, 我在〜/工作区,现在, 130 00:06:28,370 --> 00:06:29,280 就在提示。 131 00:06:29,280 --> 00:06:31,940 但我可能是完全 在文件夹的烂摊子丢了, 132 00:06:31,940 --> 00:06:34,946 我不知道我在哪里,并 不知道,我想回去。 133 00:06:34,946 --> 00:06:36,320 有两件事情我可以做。 134 00:06:36,320 --> 00:06:40,920 >> 首先,我可以计算 出来我在哪里,通过键入PWD。 135 00:06:40,920 --> 00:06:42,720 这是我当前的工作目录。 136 00:06:42,720 --> 00:06:45,830 如果我打回车键, 告诉我,究竟我在哪里。 137 00:06:45,830 --> 00:06:49,400 现在的/ home / Ubuntu是 的说法,波浪线很长的路要走, 138 00:06:49,400 --> 00:06:51,290 这是你的主目录。 139 00:06:51,290 --> 00:06:56,540 但它告诉我,我在 家用/ Ubuntu的/工作区,或〜/工作区。 140 00:06:56,540 --> 00:07:00,700 >> 我要去导航 我PSET1目录再次, 141 00:07:00,700 --> 00:07:02,229 而我要列出其中的内容。 142 00:07:02,229 --> 00:07:04,770 我看到,我还有一个 目录中有,所谓的群众演员。 143 00:07:04,770 --> 00:07:09,020 所以,我要cd到群众演员,和 那么我要清楚我的屏幕。 144 00:07:09,020 --> 00:07:11,540 >> 所以,现在,我很远的,对不对? 145 00:07:11,540 --> 00:07:13,680 如果我想要回什么 马上工作区? 146 00:07:13,680 --> 00:07:15,138 有两件事情我可以做的。 147 00:07:15,138 --> 00:07:18,750 我可以输入CD,点,点,斜线,点, 点,到上一级,然后 148 00:07:18,750 --> 00:07:19,640 另一个层次。 149 00:07:19,640 --> 00:07:21,090 但是,这是一种烦人。 150 00:07:21,090 --> 00:07:24,990 >> 所以,如果我想回去 只是我的主目录,波浪线, 151 00:07:24,990 --> 00:07:27,690 我可以输入光盘后,什么都没有。 152 00:07:27,690 --> 00:07:29,224 镉进入。 153 00:07:29,224 --> 00:07:30,140 而现在,我在波浪线。 154 00:07:30,140 --> 00:07:34,310 如果我想要得到的工作空间, 我可以只键入cd工作区。 155 00:07:34,310 --> 00:07:36,770 而这就是你的工作 更改目录 156 00:07:36,770 --> 00:07:42,080 在CS50 IDE或任何Linux内 操作系统在命令行。 157 00:07:42,080 --> 00:07:42,580 好吧。 158 00:07:42,580 --> 00:07:45,610 接下来的一个可能 派上用场是MKDIR, 159 00:07:45,610 --> 00:07:48,709 这是短期的做一个目录, 如果我需要创建一个新的文件夹。 160 00:07:48,709 --> 00:07:50,750 如果你熟悉 在GUI操作系统, 161 00:07:50,750 --> 00:07:51,820 你可能会用鼠标右键单击。 162 00:07:51,820 --> 00:07:54,500 然后,当在上下文菜单 弹出,选择新建文件夹。 163 00:07:54,500 --> 00:07:56,250 这可能是如何 你之前已经做到了。 164 00:07:56,250 --> 00:08:00,979 但是,我们也可以创建 目录在命令行。 165 00:08:00,979 --> 00:08:02,020 所以,我们又回到了IDE。 166 00:08:02,020 --> 00:08:08,020 我会放大,在终端上 我列出目录的内容 167 00:08:08,020 --> 00:08:11,882 再次,只是为了给我们 一个参照系。 168 00:08:11,882 --> 00:08:14,340 比方说,现在,我已经 处理完问题设置0 169 00:08:14,340 --> 00:08:15,580 和习题集1。 170 00:08:15,580 --> 00:08:19,390 所以,我想创建一个新的目录 上班的问题设置2。 171 00:08:19,390 --> 00:08:20,420 我怎么做? 172 00:08:20,420 --> 00:08:24,132 >> 好了,再次,我可以用鼠标右键单击 左侧有,然后选择新建文件夹 173 00:08:24,132 --> 00:08:25,340 并创建一个pset2目录。 174 00:08:25,340 --> 00:08:26,240 这将工作太。 175 00:08:26,240 --> 00:08:28,615 但是,我也这样做的 命令行很快, 176 00:08:28,615 --> 00:08:35,049 通过键入MKDIR,space--我 键入N,但 - 空间pset2。 177 00:08:35,049 --> 00:08:38,659 如果我敲回车,然后我列出 我的目录中再度内容, 178 00:08:38,659 --> 00:08:40,710 我看,你看,现在 我有一个pset2文件夹。 179 00:08:40,710 --> 00:08:43,110 我可以导航到 在使用CD和做 180 00:08:43,110 --> 00:08:45,614 所有的工作,我需要做的pset2。 181 00:08:45,614 --> 00:08:48,530 顺便说一句,我就流行过 这里真的很快到文件树。 182 00:08:48,530 --> 00:08:53,494 你可以看到,同样,在 图形文件浏览器, 183 00:08:53,494 --> 00:08:56,160 我们可以看到,pset2目录 还建立有。 184 00:08:56,160 --> 00:08:58,537 我可以找到它, 使用GUI为好。 185 00:08:58,537 --> 00:09:00,870 下一次,这就是 可能会派上用场 186 00:09:00,870 --> 00:09:03,650 是CP,这是短期的副本。 187 00:09:03,650 --> 00:09:06,960 复制,不像其他所有的 命令我们以前见过, 188 00:09:06,960 --> 00:09:11,800 有两个参数,一个来源, 要复制的文件名, 189 00:09:11,800 --> 00:09:15,810 和目的地,在那里你 要将该文件复制到。 190 00:09:15,810 --> 00:09:19,490 这是很容易复制 一个文件,所以让我们做到这一点。 191 00:09:19,490 --> 00:09:20,640 >> 所以,我们又回到了IDE。 192 00:09:20,640 --> 00:09:24,540 我要列出内容 我与LS当前目录。 193 00:09:24,540 --> 00:09:28,310 现在,让我们说,我想 使hello.txt的副本。 194 00:09:28,310 --> 00:09:32,120 再次,从对文件树 左,图形界面, 195 00:09:32,120 --> 00:09:35,969 在hello.txt的,我可以用鼠标右键单击, 做一个拷贝,粘贴复制。 196 00:09:35,969 --> 00:09:38,260 但我可以很快做到这一点 在命令行了。 197 00:09:38,260 --> 00:09:42,520 >> 比方说,我想复制 hello.txt的到hi.txt。 198 00:09:42,520 --> 00:09:45,850 我可以CP,空间,hello.txt的。 199 00:09:45,850 --> 00:09:48,850 这是我的源文件,所以这就是为什么 我会先选择之一。 200 00:09:48,850 --> 00:09:51,058 然后我需要来命名 目标文件,hi.txt。 201 00:09:51,058 --> 00:09:53,690 202 00:09:53,690 --> 00:09:54,620 我敲回车。 203 00:09:54,620 --> 00:09:57,930 如果我列出的内容,我 目录再次,还有的hi.txt。 204 00:09:57,930 --> 00:09:59,220 我做了它的一个副本。 205 00:09:59,220 --> 00:10:01,090 而事实上,如果我去了 到hi.txt,我可以 206 00:10:01,090 --> 00:10:04,030 看,这将是一个确切的 重复一切的 207 00:10:04,030 --> 00:10:08,330 存在于我的hello.txt的档案。 208 00:10:08,330 --> 00:10:09,790 >> 这就是你如何复制文件。 209 00:10:09,790 --> 00:10:12,680 但是,如果你想什么 复制整个目录? 210 00:10:12,680 --> 00:10:16,510 因此,对于第二,让我们一起来看看 什么是我的pset0目录。 211 00:10:16,510 --> 00:10:23,950 如果我的CD pset0并列出内容, 我有一个名为目录,样品, 212 00:10:23,950 --> 00:10:26,252 和一个临时文件,scratch.sb2。 213 00:10:26,252 --> 00:10:27,210 所以这是很好的了解。 214 00:10:27,210 --> 00:10:29,800 因此,让我们清除屏幕, 而我要回去 215 00:10:29,800 --> 00:10:32,870 我的第二个工作区目录。 216 00:10:32,870 --> 00:10:36,630 >> 比方说,现在,我想 让我pset0目录的副本。 217 00:10:36,630 --> 00:10:42,940 我不能说CP pset0 pset3,例如。 218 00:10:42,940 --> 00:10:46,220 你得到这个奇怪的消息, 省略目录pset0。 219 00:10:46,220 --> 00:10:47,439 为什么你得到的消息? 220 00:10:47,439 --> 00:10:49,730 嗯,事实证明,当 你有一个目录 221 00:10:49,730 --> 00:10:53,150 拥有它里面其他的东西, cp命令并没有真正 222 00:10:53,150 --> 00:10:55,590 一定知道该怎么办。 223 00:10:55,590 --> 00:10:59,670 >> 我们需要明确 告诉Linux的终端, 224 00:10:59,670 --> 00:11:03,720 我希望你能复制 pset0目录和副本 225 00:11:03,720 --> 00:11:07,530 每一个存在的文件夹内 它和每一个文件 226 00:11:07,530 --> 00:11:08,750 存在它的内部。 227 00:11:08,750 --> 00:11:13,270 换句话说,我需要你 递归地跳进pset0 228 00:11:13,270 --> 00:11:15,660 并让一切的副本在那里。 229 00:11:15,660 --> 00:11:25,280 >> 如果我要做到这一点,我能做些什么 是CP-R,递归,pset0 pset3。 230 00:11:25,280 --> 00:11:26,850 回车。 231 00:11:26,850 --> 00:11:29,290 现在,如果我列出 我的目录内容, 232 00:11:29,290 --> 00:11:32,180 我看到有在pset3 目录,我可以工作。 233 00:11:32,180 --> 00:11:36,990 如果我cd到pset3现在 然后列出的内容,你看, 234 00:11:36,990 --> 00:11:39,594 还有一次是样品和scratch.sb2。 235 00:11:39,594 --> 00:11:40,510 所以,这很酷。 236 00:11:40,510 --> 00:11:43,819 所以,这就是你如何复制整个 目录,而不是只是一个单一的文件。 237 00:11:43,819 --> 00:11:45,860 所以,如果你想复制 目录,只记得 238 00:11:45,860 --> 00:11:49,830 使用-r标志,当你 正与cp命令。 239 00:11:49,830 --> 00:11:50,330 好吧。 240 00:11:50,330 --> 00:11:52,320 所以我复制的文件,但 我错做到了。 241 00:11:52,320 --> 00:11:53,695 而现在,我想摆脱它。 242 00:11:53,695 --> 00:11:54,850 我怎么做? 243 00:11:54,850 --> 00:11:56,830 同样,如果你熟悉 使用GUI界面, 244 00:11:56,830 --> 00:11:58,310 你可以用鼠标右键单击 而只是选择删除。 245 00:11:58,310 --> 00:12:00,630 而且它会发送到 垃圾桶或回收站。 246 00:12:00,630 --> 00:12:03,320 但是,在命令行中,我们 只需键入rm,对于删除, 247 00:12:03,320 --> 00:12:05,580 的,然后将名 文件中,我们要摆脱。 248 00:12:05,580 --> 00:12:08,614 >> 现在,RM非常小心。 249 00:12:08,614 --> 00:12:11,280 它做了很多的双重检验, 确保你真正 250 00:12:11,280 --> 00:12:12,377 要删除的文件。 251 00:12:12,377 --> 00:12:15,460 它不想犯任何错误, 因为没有回收站在这里。 252 00:12:15,460 --> 00:12:17,010 一旦我们删除一个文件,它的消失。 253 00:12:17,010 --> 00:12:18,710 还有的实在没有办法恢复了。 254 00:12:18,710 --> 00:12:20,730 因此,我们需要是相当 小心了,所以RM 255 00:12:20,730 --> 00:12:23,110 将是非常小心我们。 256 00:12:23,110 --> 00:12:27,120 >> 因此,让我们回到IDE 并摆脱那个hi.txt文件 257 00:12:27,120 --> 00:12:29,640 我在一分钟前的副本。 258 00:12:29,640 --> 00:12:30,560 因此,我们在IDE中。 259 00:12:30,560 --> 00:12:33,180 我列出我的目录中的内容 再次,只是给我们一些背景。 260 00:12:33,180 --> 00:12:36,500 我的意思是,你可以看到,有hi.txt, 我创建了一小会儿前。 261 00:12:36,500 --> 00:12:38,196 现在,我想摆脱它。 262 00:12:38,196 --> 00:12:38,820 我该怎么办呢? 263 00:12:38,820 --> 00:12:39,810 >> 再次,只是RM。 264 00:12:39,810 --> 00:12:46,220 因此,我可以键入rm hi.txt然后按Enter键。 265 00:12:46,220 --> 00:12:47,970 还有的RM之中 非常小心我们 266 00:12:47,970 --> 00:12:50,178 ,使实际确保我们 要删除此文件。 267 00:12:50,178 --> 00:12:52,784 你真的要删除 常规空文件hi.txt? 268 00:12:52,784 --> 00:12:55,200 这就像一个工作 系统,如Windows或Mac, 269 00:12:55,200 --> 00:12:56,310 你可能会 熟悉弹出 270 00:12:56,310 --> 00:12:58,770 那个盒子说,你真的 一定要做到这一点。 271 00:12:58,770 --> 00:13:01,228 >> 我敢肯定,我想这一点, 所以我会打字,yes-- 272 00:13:01,228 --> 00:13:04,390 或者我也可以只 键入y--然后按Enter键。 273 00:13:04,390 --> 00:13:08,620 如果我列出的内容,我 目录再次,hi.txt走了。 274 00:13:08,620 --> 00:13:10,000 还不错吧? 275 00:13:10,000 --> 00:13:12,410 让我们按Ctrl L,只 为了摆脱这一切的东西 276 00:13:12,410 --> 00:13:14,900 并让我们回到 在屏幕的顶部。 277 00:13:14,900 --> 00:13:18,520 >> 现在,有一种方法,以 短路RM,所以 278 00:13:18,520 --> 00:13:20,090 它不问我们这个问题。 279 00:13:20,090 --> 00:13:22,060 我们真的知道我们要 摆脱该文件中, 280 00:13:22,060 --> 00:13:23,490 我们甚至不希望 要问的问题。 281 00:13:23,490 --> 00:13:24,720 我们该怎么做呢? 282 00:13:24,720 --> 00:13:27,180 好了,我们可以指定一个 额外的标志,就像我们 283 00:13:27,180 --> 00:13:30,400 与CP我们是在哪里 可以添加-r标志, 284 00:13:30,400 --> 00:13:32,800 以递归复制到目录中。 285 00:13:32,800 --> 00:13:35,630 还有另一个标志 对于RM,这是-f, 286 00:13:35,630 --> 00:13:39,470 这是迫使RM做的正是 正是我们告诉它做的事。 287 00:13:39,470 --> 00:13:44,610 >> 所以我们可以说的是,现在,我想 摆脱我的hello.txt的文件。 288 00:13:44,610 --> 00:13:46,490 我不希望这样一个哪一方面。 289 00:13:46,490 --> 00:13:47,370 我能做些什么? 290 00:13:47,370 --> 00:13:54,710 好吧,我可以RM -f hello.txt的。 291 00:13:54,710 --> 00:13:57,530 你认为什么是 要在这里出现呢? 292 00:13:57,530 --> 00:13:58,030 它消失了。 293 00:13:58,030 --> 00:13:59,363 甚至没有问我这个问题。 294 00:13:59,363 --> 00:14:03,600 而事实上,如果我列出的内容 我的目录再次,它的消失。 295 00:14:03,600 --> 00:14:05,750 这里没有撤销。 296 00:14:05,750 --> 00:14:09,554 hello.txt的跑了,我是不是 甚至问我是否愿意将其删除。 297 00:14:09,554 --> 00:14:11,595 如果我想摆脱什么 的整个目录? 298 00:14:11,595 --> 00:14:14,180 299 00:14:14,180 --> 00:14:17,039 你这样做的方式是 非常相似的复制。 300 00:14:17,039 --> 00:14:19,080 如果你想删除一个 目录下,你不只是 301 00:14:19,080 --> 00:14:22,121 要删除的目录,你想 删除所有在其内部。 302 00:14:22,121 --> 00:14:26,250 所以你使用-r,以 递归删除一个目录。 303 00:14:26,250 --> 00:14:28,600 >> 因此,让我们RM -r pset2。 304 00:14:28,600 --> 00:14:31,870 我没有实际工作pset2, 这样我就可以摆脱那个目录。 305 00:14:31,870 --> 00:14:33,040 我敲回车。 306 00:14:33,040 --> 00:14:35,050 我是否要删除 该目录,pset2? 307 00:14:35,050 --> 00:14:37,160 是的,我愿意。 308 00:14:37,160 --> 00:14:41,150 如果我列出的内容 我的目录再次,它的消失。 309 00:14:41,150 --> 00:14:41,650 好吧? 310 00:14:41,650 --> 00:14:43,739 >> 在这个主题上还有一个变化。 311 00:14:43,739 --> 00:14:46,280 所以,我会再次清屏, 把一切都在上面。 312 00:14:46,280 --> 00:14:47,420 打LS。 313 00:14:47,420 --> 00:14:49,890 现在,我想摆脱 我pset3目录, 314 00:14:49,890 --> 00:14:52,810 我真的知道我要 摆脱我pset3目录。 315 00:14:52,810 --> 00:15:00,120 我可以递归并强行 删除我的pset3目录。 316 00:15:00,120 --> 00:15:03,900 >> 现在,你将是真 当你使用的rm -rf小心。 317 00:15:03,900 --> 00:15:06,784 当你的程序越多,它会 你刚才做的真的很快。 318 00:15:06,784 --> 00:15:08,200 而事实上,我做这一切的时候。 319 00:15:08,200 --> 00:15:10,380 但它可以导致一些 灾难性的后果, 320 00:15:10,380 --> 00:15:12,340 如果你不小心 删除错误的事情。 321 00:15:12,340 --> 00:15:15,089 所以,我要你知道, 这是提供给你一个选择, 322 00:15:15,089 --> 00:15:17,220 但应谨慎使用, 并请谨慎使用。 323 00:15:17,220 --> 00:15:20,910 >> 我知道一个事实,我不工作 我的问题集3了,所以我 324 00:15:20,910 --> 00:15:22,550 要摆脱所有这些文件的。 325 00:15:22,550 --> 00:15:26,420 我知道我不想问 如果我想删除每一次 326 00:15:26,420 --> 00:15:30,640 一个文件,所以我要去室射频pset3。 327 00:15:30,640 --> 00:15:32,640 甚至没有问我,如果我 想摆脱它。 328 00:15:32,640 --> 00:15:33,840 我打LS。 329 00:15:33,840 --> 00:15:35,680 pset3走了。 330 00:15:35,680 --> 00:15:39,730 所以,这一切的变化,你 可以用它来摆脱的文件与RM。 331 00:15:39,730 --> 00:15:43,620 >> 最后一个命令行命令,这是 要对你非常有用 332 00:15:43,620 --> 00:15:46,391 是的MV,这是短期的举措。 333 00:15:46,391 --> 00:15:48,960 此举是基本上等同于重命名。 334 00:15:48,960 --> 00:15:53,870 它是将文件从一个位置到 另,源到目的地。 335 00:15:53,870 --> 00:15:59,400 让我们看到使用一招威力 得心应手的终端窗口。 336 00:15:59,400 --> 00:16:02,070 >> 所以,我在我的PSET1 目录中,我注意到 337 00:16:02,070 --> 00:16:03,860 事情已经有点不对劲。 338 00:16:03,860 --> 00:16:08,620 我是工作在我贪婪的问题, 但我不小心把它命名为greddy。 339 00:16:08,620 --> 00:16:11,380 所以,当我尝试运行它通过 check50,它并没有真正发挥作用。 340 00:16:11,380 --> 00:16:12,630 我有几个选项。 341 00:16:12,630 --> 00:16:16,220 我们可以做我们以前做过, 这是为了使文件的副本。 342 00:16:16,220 --> 00:16:23,960 我可以复制greddy.c 到greedy.c,对不对? 343 00:16:23,960 --> 00:16:25,580 回车。 344 00:16:25,580 --> 00:16:28,180 我看到这两个文件都在那里。 345 00:16:28,180 --> 00:16:36,337 然后我可以RM, 除去,greddy.c。 346 00:16:36,337 --> 00:16:37,170 这摆脱它。 347 00:16:37,170 --> 00:16:40,920 因此,将工作,我确认后, 我想摆脱它。 348 00:16:40,920 --> 00:16:44,770 而且能有效地有 更名greddy.c到greedy.c。 349 00:16:44,770 --> 00:16:48,460 我复制它,然后 去掉了原。 350 00:16:48,460 --> 00:16:50,170 >> 但是,这是一个多步骤的过程。 351 00:16:50,170 --> 00:16:51,670 当然,还有一种更好的方法。 352 00:16:51,670 --> 00:16:52,420 事实上,有。 353 00:16:52,420 --> 00:16:55,810 因此,让我们打控制L, 只是把这个备份, 354 00:16:55,810 --> 00:16:58,680 并列出内容 我的目录了。 355 00:16:58,680 --> 00:17:00,350 >> 所以我们可以说,哦,我犯了一个错误。 356 00:17:00,350 --> 00:17:03,470 其实我真的想 调用该文件greddy.c。 357 00:17:03,470 --> 00:17:11,369 在一举,我可以输入 移动greedy.c到greddy.c。 358 00:17:11,369 --> 00:17:12,470 回车。 359 00:17:12,470 --> 00:17:15,210 而现在,我没有 复制和删除, 360 00:17:15,210 --> 00:17:16,880 我只是能够将其重命名。 361 00:17:16,880 --> 00:17:18,710 一站式购物。 362 00:17:18,710 --> 00:17:21,160 >> 现在,还有很多其他的 基本的命令行工具 363 00:17:21,160 --> 00:17:22,640 你可以使用 Linux命令行。 364 00:17:22,640 --> 00:17:24,990 我们将讨论很多 其中在CS50未来。 365 00:17:24,990 --> 00:17:27,948 但现在,只是让你的脚 与此终端工作湿 366 00:17:27,948 --> 00:17:30,540 环境,这五个命令 应该让你很远 367 00:17:30,540 --> 00:17:34,990 在导航周围, 在你的IDE文件工作 368 00:17:34,990 --> 00:17:37,770 或在任何基于Linux的 你使用的操作系统。 369 00:17:37,770 --> 00:17:40,580 >> 如果你好奇,你想 向前看一点在一些 370 00:17:40,580 --> 00:17:43,420 命令行命令 我们将使用在未来, 371 00:17:43,420 --> 00:17:46,930 这里有一对夫妇列表 比较常见的。 372 00:17:46,930 --> 00:17:47,820 我是道格·劳埃德。 373 00:17:47,820 --> 00:17:49,860 这是CS50。 374 00:17:49,860 --> 00:17:52,598