1 00:00:00,000 --> 00:00:05,060 >> [MUSIC CHƠI] 2 00:00:05,060 --> 00:00:05,890 >> DOUG LLOYD: OK. 3 00:00:05,890 --> 00:00:08,680 Vì vậy, chúng ta hãy nói về làm thế nào để sử dụng dòng lệnh Linux. 4 00:00:08,680 --> 00:00:11,860 Bây giờ, các CS50 IDE, hoặc trong Trên thực tế, thậm chí là một thiết bị CS50, 5 00:00:11,860 --> 00:00:15,210 nếu bạn quen với điều đó, hoặc bạn đang dùng phiên bản cũ của CS50, 6 00:00:15,210 --> 00:00:17,420 là một máy tính dựa trên đám mây mà chạy Ubuntu, 7 00:00:17,420 --> 00:00:20,259 đó là một trong những nhiều hương vị của hệ điều hành Linux. 8 00:00:20,259 --> 00:00:22,300 Hệ điều hành Linux là ưa chuộng bởi các lập trình viên, 9 00:00:22,300 --> 00:00:25,690 bởi vì nó chỉ là mát hơn, phải không? 10 00:00:25,690 --> 00:00:29,170 >> Nhiều bản phân phối Linux hiện đại có giao diện người dùng đồ họa, 11 00:00:29,170 --> 00:00:33,710 mà chúng tôi cũng gọi ảnh minh hoạ, G-U-I, để cho phép dễ dàng điều hướng chuột dựa trên, 12 00:00:33,710 --> 00:00:36,920 mà bạn có thể quen với, nếu bạn là một người sử dụng Windows hoặc Mac, 13 00:00:36,920 --> 00:00:39,961 di chuyển chuột của bạn xung quanh, double-click vào biểu tượng, và như vậy. 14 00:00:39,961 --> 00:00:42,210 Tuy nhiên, mặc dù là một lập trình viên, và mặc dù các IDE 15 00:00:42,210 --> 00:00:44,800 có khả năng làm một số người dùng đồ họa 16 00:00:44,800 --> 00:00:47,400 công cụ, nhấp vào, và kéo, và tất cả điều đó, 17 00:00:47,400 --> 00:00:50,197 bạn vẫn sẽ được sử dụng của bạn cửa sổ terminal khá thường xuyên. 18 00:00:50,197 --> 00:00:52,280 Và bạn có thể làm nhiều cùng một công việc mà bạn có thể 19 00:00:52,280 --> 00:00:53,905 làm gì với một con chuột với bàn phím lệnh. 20 00:00:53,905 --> 00:00:56,821 Và chúng ta sẽ nói một chút về những gì một số các lệnh 21 00:00:56,821 --> 00:00:58,050 là ngay bây giờ. 22 00:00:58,050 --> 00:01:02,490 >> Bây giờ, các lệnh này có thể được sử dụng trên bất kỳ điều hành dựa trên Unix 23 00:01:02,490 --> 00:01:06,790 hệ thống, bao gồm Linux, nhưng cũng bao gồm Mac OS. 24 00:01:06,790 --> 00:01:12,930 Nếu bạn mở Terminal trên Mac của bạn, bạn có thể sử dụng các lệnh chính xác. 25 00:01:12,930 --> 00:01:15,705 Windows cũng có lệnh Prompt, nhưng một số lệnh 26 00:01:15,705 --> 00:01:17,871 là hơi khác nhau, do đó, nó không thực sự làm việc, 27 00:01:17,871 --> 00:01:20,080 bởi vì Windows không phải là một hệ thống dựa trên Unix. 28 00:01:20,080 --> 00:01:22,620 >> Vì vậy, chúng ta hãy xem xét một số của các lệnh Linux. 29 00:01:22,620 --> 00:01:26,100 Việc đầu tiên mà bạn sẽ thấy có thể sử dụng khá nhiều là ls. 30 00:01:26,100 --> 00:01:30,410 Đó là một l viết thường, theo sau là một chữ thường s, đó là viết tắt của danh sách. 31 00:01:30,410 --> 00:01:33,720 Và những gì lệnh danh sách nào đó là mang đến cho bạn một readout của tất cả các tập tin 32 00:01:33,720 --> 00:01:35,670 và thư mục trong thư mục hiện tại của bạn. 33 00:01:35,670 --> 00:01:39,430 Vì vậy, bạn có thể nhìn thấy tất cả mọi thứ bạn có thể có được từ nơi mà bạn đang xem. 34 00:01:39,430 --> 00:01:41,545 >> Vì vậy, tôi đã mở ra ở đây IDE CS50. 35 00:01:41,545 --> 00:01:44,540 Và tôi sẽ zoom-in trong một thứ hai để cung cấp cho bạn một cái nhìn gần hơn, 36 00:01:44,540 --> 00:01:47,240 nhưng đây là những hình ảnh rộng về những gì các IDE như thế nào. 37 00:01:47,240 --> 00:01:49,580 Ở bên trái, bạn có thể thấy chúng tôi có một cây tập tin, mà có lẽ bạn đang 38 00:01:49,580 --> 00:01:52,663 quen thuộc với, nháy đúp, và tập tin và thư mục, và tất cả những thứ đó. 39 00:01:52,663 --> 00:01:54,694 Vì vậy, đó là vẫn còn có trong thiết bị CS50. 40 00:01:54,694 --> 00:01:57,860 Tại các trung tâm ở phía trên là nơi bạn sẽ viết mã của bạn, một lần 41 00:01:57,860 --> 00:01:58,960 bạn nhấp chuột vào một tập tin. 42 00:01:58,960 --> 00:02:00,900 Và ở phía dưới, chúng tôi có một cửa sổ terminal, 43 00:02:00,900 --> 00:02:04,040 đó là nơi mà chúng ta có thể thực hiện các lệnh terminal. 44 00:02:04,040 --> 00:02:07,460 >> Tôi sẽ để zoom-in và đi qua đây, chỉ cần 45 00:02:07,460 --> 00:02:12,360 để cho bạn thấy rằng, trên thực tế, tôi có thể nhấp chuột vào các tập tin và thư mục. 46 00:02:12,360 --> 00:02:17,010 Vì vậy, rõ ràng, nơi tôi hiện nay, tôi có hai thư mục, gọi là pset0 và pset1, 47 00:02:17,010 --> 00:02:20,520 và ba tập tin, một gọi là hello, một gọi là hello.c, 48 00:02:20,520 --> 00:02:22,870 và một gọi hello.txt. 49 00:02:22,870 --> 00:02:27,100 >> Vì vậy, hãy di chuyển xuống các thiết bị đầu cuối cửa sổ và có được một cái nhìn gần gũi hơn. 50 00:02:27,100 --> 00:02:31,010 Vì vậy, chúng tôi chỉ nói chuyện, một lần nữa, về thực tế mà chúng tôi có ba tập tin và hai 51 00:02:31,010 --> 00:02:32,970 các thư mục trong thư mục hiện hành. 52 00:02:32,970 --> 00:02:37,080 Nếu tôi gõ ls, mà một lần nữa là lệnh để liệt kê 53 00:02:37,080 --> 00:02:40,870 các nội dung của hiện tại thư mục, và sau đó tôi nhấn Enter, 54 00:02:40,870 --> 00:02:47,220 hãy nhìn những gì tôi nhìn thấy, hello, hello.c, hello.txt, pset0 và pset1. 55 00:02:47,220 --> 00:02:49,620 >> pset0 và pset1 là màu xanh, để cho biết 56 00:02:49,620 --> 00:02:52,420 cho bạn đó là những thư mục rằng chúng ta có thể hướng vào. 57 00:02:52,420 --> 00:02:54,503 Và chúng ta sẽ tìm hiểu một chút chút thông tin về làm thế nào để điều hướng 58 00:02:54,503 --> 00:02:56,290 vào thư mục trong một phút. 59 00:02:56,290 --> 00:03:00,920 Và mọi điều khác là màu đen, nếu đó là một tập tin văn bản hoặc một mã nguồn 60 00:03:00,920 --> 00:03:03,590 tập tin, và màu xanh lá cây, nếu nó là một tập tin thực thi. 61 00:03:03,590 --> 00:03:06,367 Vì vậy, rõ ràng, điều đó có nghĩa là tôi có thể chạy một chương trình được gọi, xin chào. 62 00:03:06,367 --> 00:03:07,950 Đó là những gì mà một màu xanh lá cây có nghĩa là gì. 63 00:03:07,950 --> 00:03:10,080 Nhưng về cơ bản, gõ lệnh ls đã cho phép 64 00:03:10,080 --> 00:03:13,470 tôi nhìn vào tất cả mọi thứ mà tồn tại trong thư mục hiện tại của tôi, mà 65 00:03:13,470 --> 00:03:17,940 phù hợp với những gì chúng ta thấy ở đây, trong hiển thị đồ họa trong cùng. 66 00:03:17,940 --> 00:03:19,940 Lệnh tiếp theo bạn sẽ có thể sử dụng khá một chút 67 00:03:19,940 --> 00:03:24,792 là cd, chữ thường c, d chữ thường, mà là viết tắt cho thư mục thay đổi. 68 00:03:24,792 --> 00:03:27,500 Điều này cho phép chúng tôi làm những gì tôi đã nói về một giây trước đó, mà 69 00:03:27,500 --> 00:03:31,150 là để điều hướng giữa thư mục vào lệnh 70 00:03:31,150 --> 00:03:33,700 dòng, như trái ngược với double-click vào thư mục. 71 00:03:33,700 --> 00:03:37,250 Vì vậy, nếu chúng ta gõ cd và sau đó tên của một thư mục, 72 00:03:37,250 --> 00:03:40,890 chúng ta có thể nhận được vào thư mục đó. 73 00:03:40,890 --> 00:03:44,680 >> Là một sang một bên, biết rằng tên của thư mục hiện tại luôn luôn là 74 00:03:44,680 --> 00:03:48,670 dot, và tên của thư mục một cấp trên, nơi bây giờ chúng tôi đang có, 75 00:03:48,670 --> 00:03:54,820 đó là tên của thư mục trong mà thư mục của chúng tôi là, dot, dot-- 76 00:03:54,820 --> 00:03:56,851 hoặc trong đó thư mục của chúng tôi là, là dấu chấm, dấu chấm. 77 00:03:56,851 --> 00:03:59,350 Và nếu bạn đã từng tò mò về tên của thư mục của bạn, 78 00:03:59,350 --> 00:04:03,430 bạn có thể gõ pwd, viết tắt cho thư mục làm việc hiện tại. 79 00:04:03,430 --> 00:04:06,827 Chúng tôi sẽ có một cái nhìn vào tất cả những bây giờ, bằng đường trở về IDE CS50. 80 00:04:06,827 --> 00:04:08,160 Vì vậy, tôi trở lại trong không gian làm việc của tôi bây giờ. 81 00:04:08,160 --> 00:04:11,930 Và tôi sẽ zoom-in một lần nữa trên thiết bị đầu cuối, vì vậy chúng tôi có thể có một cái nhìn 82 00:04:11,930 --> 00:04:14,209 tại di chuyển xung quanh trong IDE. 83 00:04:14,209 --> 00:04:16,250 Vì vậy, tôi sẽ liệt kê các nội dung của thư mục của tôi 84 00:04:16,250 --> 00:04:19,220 một lần nữa, chỉ để reground chúng tôi ở nơi mà chúng ta đang có. 85 00:04:19,220 --> 00:04:21,740 Vì vậy, nếu tôi gõ ls, mà là danh sách một lần nữa, 86 00:04:21,740 --> 00:04:24,160 Tôi thấy rằng tôi có thể nhận được để pset0 và pset1. 87 00:04:24,160 --> 00:04:26,420 Đó là những thư mục Tôi có thể nhận được để từ đây. 88 00:04:26,420 --> 00:04:30,400 Tôi biết rằng, vì các IDE cho tôi một đầu mối bằng cách tô chúng màu xanh. 89 00:04:30,400 --> 00:04:33,295 >> Hãy nói rằng tôi muốn nhận được vào thư mục pset1 của tôi, 90 00:04:33,295 --> 00:04:35,310 bởi vì tôi đang làm việc về vấn đề thiết lập 1. 91 00:04:35,310 --> 00:04:41,380 Tôi có thể gõ cd-- một lần nữa, tắt thay đổi directory-- không gian, pset1. 92 00:04:41,380 --> 00:04:43,334 Và nếu tôi nhấn Enter, thông báo những gì sẽ xảy ra. 93 00:04:43,334 --> 00:04:45,000 Nó không giống như rất nhiều đã xảy ra. 94 00:04:45,000 --> 00:04:50,510 Nhưng nếu bạn nhìn vào dấu nhắc, nó bây giờ nói với tôi rằng tôi là trong ~ / workspace / pset1. 95 00:04:50,510 --> 00:04:55,510 Tôi đã lái vào pset1 thư mục đó là trong không gian làm việc của tôi. 96 00:04:55,510 --> 00:05:00,560 >> Và nếu tôi gõ ls, tôi thấy một số công cụ khác nhau ở đây, phải không? 97 00:05:00,560 --> 00:05:03,810 Điều này là không giống nhau danh sách mà tôi thấy trước đó. 98 00:05:03,810 --> 00:05:05,350 Tôi đã lái vào pset1. 99 00:05:05,350 --> 00:05:08,560 Và vì vậy bây giờ, khi tôi gõ ls, tôi nhận được bối cảnh của những gì tôi có thể 100 00:05:08,560 --> 00:05:12,600 nhìn thấy từ bên trong thư mục pset1. 101 00:05:12,600 --> 00:05:16,056 >> Bây giờ, tôi sẽ gõ kiểm soát l, mà chỉ cần xóa màn hình. 102 00:05:16,056 --> 00:05:18,180 Và tôi sẽ liệt kê các nội dung của thư mục 103 00:05:18,180 --> 00:05:18,880 một lần nữa, chỉ để bạn có thể nhìn thấy. 104 00:05:18,880 --> 00:05:20,730 Tôi chỉ muốn làm điều đó để rõ ràng ra một số công cụ 105 00:05:20,730 --> 00:05:22,521 mà bạn đã thấy xuống dưới đây và để ngăn chặn điều này 106 00:05:22,521 --> 00:05:24,660 từ việc đi quá xa xuống ra khỏi phạm vi. 107 00:05:24,660 --> 00:05:28,440 >> Bây giờ, tôi đã nói trước đó rằng, nếu tôi muốn để điều hướng đến thư mục hiện hành, 108 00:05:28,440 --> 00:05:31,580 Tôi có thể gõ cd gian chấm. 109 00:05:31,580 --> 00:05:32,080 Nhấn Enter. 110 00:05:32,080 --> 00:05:33,330 Nó không làm bất cứ điều gì, phải không? 111 00:05:33,330 --> 00:05:35,480 Tôi đang thay đổi thư mục vào thư mục hiện hành. 112 00:05:35,480 --> 00:05:37,813 Bạn không phải lúc nào tìm thấy một nhu cầu cho một dấu chấm duy nhất, 113 00:05:37,813 --> 00:05:39,540 nhưng bạn sẽ thỉnh thoảng. 114 00:05:39,540 --> 00:05:41,950 >> Hãy nói rằng tôi muốn để di chuyển lên một cấp. 115 00:05:41,950 --> 00:05:44,450 Tôi muốn để có được trở lại thư mục không gian làm việc của tôi. 116 00:05:44,450 --> 00:05:49,800 Tôi không thể gõ cd không gian làm việc, không có tập tin hoặc thư mục. 117 00:05:49,800 --> 00:05:52,780 Và lý do cho that-- nếu tôi gõ ls một time-- hơn 118 00:05:52,780 --> 00:05:58,060 là không có thư mục được gọi là không gian làm việc bên trong các thư mục pset1 của tôi. 119 00:05:58,060 --> 00:06:00,275 Tôi sẽ xóa của tôi sàng lọc một lần nữa với điều khiển l. 120 00:06:00,275 --> 00:06:02,150 Hãy nhớ những gì tôi nói trước đó, tuy nhiên, chúng ta rằng 121 00:06:02,150 --> 00:06:04,010 có thể điều hướng trở lại với dấu chấm, dấu chấm. 122 00:06:04,010 --> 00:06:05,880 Đó là tên của thư mục mẹ. 123 00:06:05,880 --> 00:06:10,727 Vì vậy, nếu tôi gõ cd, không gian, dot, dot, và sau đó nhấn Enter, 124 00:06:10,727 --> 00:06:11,810 bây giờ nhìn vào những gì đã xảy ra. 125 00:06:11,810 --> 00:06:15,250 Dấu nhắc lệnh của tôi nói với tôi rằng tôi là trở lại trong thư mục ~ / không gian làm việc của tôi. 126 00:06:15,250 --> 00:06:19,360 Tôi di chuyển lên một cấp, thanks để chấm, dấu chấm. 127 00:06:19,360 --> 00:06:23,400 >> Bây giờ, chúng ta hãy nói rằng tôi đang sử dụng một hệ điều hành dựa trên Linux, 128 00:06:23,400 --> 00:06:25,440 nhưng không nhất thiết phải cho tôi biết tôi đang ở đâu. 129 00:06:25,440 --> 00:06:28,370 Điều này sẽ xảy ra cho chúng tôi biết rằng Tôi đang trong ~ / không gian làm việc ngay bây giờ, 130 00:06:28,370 --> 00:06:29,280 ngay tại dấu nhắc. 131 00:06:29,280 --> 00:06:31,940 Nhưng tôi có thể hoàn toàn bị mất trong một mớ hỗn độn của các thư mục, 132 00:06:31,940 --> 00:06:34,946 và tôi không có ý tưởng mà tôi và không có ý tưởng mà tôi muốn để có được trở lại. 133 00:06:34,946 --> 00:06:36,320 Có hai điều mà tôi có thể làm. 134 00:06:36,320 --> 00:06:40,920 >> Trước hết, tôi có thể hình tôi đang ở đâu, bằng cách gõ pwd. 135 00:06:40,920 --> 00:06:42,720 Đó là thư mục làm việc hiện tại của tôi. 136 00:06:42,720 --> 00:06:45,830 Và nếu tôi nhấn Enter, nó nói với tôi một cách chính xác nơi tôi. 137 00:06:45,830 --> 00:06:49,400 Bây giờ / home / ubuntu là chặng đường dài của nói, dấu ngã, 138 00:06:49,400 --> 00:06:51,290 đó là thư mục nhà của bạn. 139 00:06:51,290 --> 00:06:56,540 Nhưng nó nói với tôi rằng tôi đang ở trong home / ubuntu / không gian làm việc, hoặc ~ / không gian làm việc. 140 00:06:56,540 --> 00:07:00,700 >> Tôi sẽ hướng đến thư mục pset1 của tôi một lần nữa, 141 00:07:00,700 --> 00:07:02,229 và tôi sẽ liệt kê các nội dung. 142 00:07:02,229 --> 00:07:04,770 Và tôi thấy rằng tôi có một thư mục đó, gọi là tính năng bổ sung. 143 00:07:04,770 --> 00:07:09,020 Vì vậy, tôi sẽ cd vào tính năng bổ sung, và sau đó tôi sẽ để xóa màn hình của tôi. 144 00:07:09,020 --> 00:07:11,540 >> Vì vậy, bây giờ, tôi khá xa, phải không? 145 00:07:11,540 --> 00:07:13,680 Nếu tôi muốn sao để không gian làm việc ngay lập tức? 146 00:07:13,680 --> 00:07:15,138 Có một vài điều tôi có thể làm. 147 00:07:15,138 --> 00:07:18,750 Tôi có thể gõ cd, dấu chấm, dấu chấm, dấu gạch chéo, dấu chấm, dot, để di chuyển lên một cấp và sau đó 148 00:07:18,750 --> 00:07:19,640 một cấp độ khác. 149 00:07:19,640 --> 00:07:21,090 Nhưng đó là loại gây phiền nhiễu. 150 00:07:21,090 --> 00:07:24,990 >> Vì vậy, nếu tôi đã bao giờ muốn để lại cho chỉ thư mục nhà của tôi, dấu ngã, 151 00:07:24,990 --> 00:07:27,690 Tôi có thể gõ cd với không có gì sau đó. 152 00:07:27,690 --> 00:07:29,224 Cd, Enter. 153 00:07:29,224 --> 00:07:30,140 Và bây giờ, tôi đang ở trong dấu ngã. 154 00:07:30,140 --> 00:07:34,310 Và nếu tôi muốn để có được không gian làm việc, Tôi chỉ có thể gõ cd không gian làm việc. 155 00:07:34,310 --> 00:07:36,770 Và đó là cách bạn làm việc thay đổi thư mục 156 00:07:36,770 --> 00:07:42,080 trong IDE CS50 hoặc bất kỳ Linux hệ điều hành tại các dòng lệnh. 157 00:07:42,080 --> 00:07:42,580 Được rồi. 158 00:07:42,580 --> 00:07:45,610 Người tiếp theo mà có thể có ích là mkdir, 159 00:07:45,610 --> 00:07:48,709 mà là viết tắt làm cho một thư mục, nếu tôi cần phải tạo một thư mục mới. 160 00:07:48,709 --> 00:07:50,750 Nếu bạn đã quen thuộc với hệ điều hành giao diện đồ họa, 161 00:07:50,750 --> 00:07:51,820 bạn có thể kích chuột phải. 162 00:07:51,820 --> 00:07:54,500 Và sau đó, khi trình đơn ngữ cảnh bật lên, chọn New Folder. 163 00:07:54,500 --> 00:07:56,250 Đó có thể là như thế nào bạn đã thực hiện nó trước. 164 00:07:56,250 --> 00:08:00,979 Nhưng chúng ta cũng có thể tạo ra thư mục ở dòng lệnh. 165 00:08:00,979 --> 00:08:02,020 Vì vậy, chúng tôi trở lại trong IDE. 166 00:08:02,020 --> 00:08:08,020 Tôi sẽ zoom-in trên các thiết bị đầu cuối và liệt kê nội dung của thư mục của tôi 167 00:08:08,020 --> 00:08:11,882 một lần nữa, chỉ để cung cấp cho chúng tôi một khung tham chiếu. 168 00:08:11,882 --> 00:08:14,340 Hãy nói rằng, bây giờ, tôi đã xong làm việc về vấn đề thiết lập 0 169 00:08:14,340 --> 00:08:15,580 và vấn đề thiết lập 1. 170 00:08:15,580 --> 00:08:19,390 Vì vậy, tôi muốn tạo một thư mục mới việc làm cho vấn đề đặt 2. 171 00:08:19,390 --> 00:08:20,420 Làm thế nào để làm điều đó? 172 00:08:20,420 --> 00:08:24,132 >> Vâng, một lần nữa, tôi có thể kích chuột phải vào trong trái phía đó và chọn New Folder 173 00:08:24,132 --> 00:08:25,340 và tạo ra một thư mục pset2. 174 00:08:25,340 --> 00:08:26,240 Điều đó sẽ làm việc quá. 175 00:08:26,240 --> 00:08:28,615 Nhưng sau đó tôi cũng làm điều đó ở dòng lệnh khá nhanh chóng, 176 00:08:28,615 --> 00:08:35,049 bằng cách gõ lệnh mkdir, space-- tôi gõ vào n, but-- gian pset2. 177 00:08:35,049 --> 00:08:38,659 Nếu tôi nhấn Enter và sau đó tôi danh sách các nội dung của thư mục của tôi một lần nữa, 178 00:08:38,659 --> 00:08:40,710 Tôi thấy rằng, nhìn, bây giờ Tôi có một thư mục pset2. 179 00:08:40,710 --> 00:08:43,110 Và tôi có thể hướng vào rằng việc sử dụng các đĩa CD và làm 180 00:08:43,110 --> 00:08:45,614 tất cả công việc tôi cần phải làm cho pset2. 181 00:08:45,614 --> 00:08:48,530 Ngẫu nhiên, tôi sẽ chỉ cần bật qua đây thực sự nhanh chóng để cây tập tin. 182 00:08:48,530 --> 00:08:53,494 Và bạn có thể thấy rằng, cũng có, trong File Explorer đồ họa, 183 00:08:53,494 --> 00:08:56,160 chúng ta có thể thấy thư mục pset2 cũng đã được tạo ra ở đó. 184 00:08:56,160 --> 00:08:58,537 Và tôi có thể điều hướng đến nó, bằng cách sử dụng giao diện đồ họa là tốt. 185 00:08:58,537 --> 00:09:00,870 Thời gian tiếp theo và đó là có thể sẽ có ích 186 00:09:00,870 --> 00:09:03,650 là cp, mà là viết tắt cho bản sao. 187 00:09:03,650 --> 00:09:06,960 Sao chép, không giống như tất cả các khác lệnh chúng ta đã thấy trước đây, 188 00:09:06,960 --> 00:09:11,800 nhận hai đối số, một nguồn tin, tên của các tập tin mà bạn muốn sao chép, 189 00:09:11,800 --> 00:09:15,810 và một điểm đến, nơi bạn muốn sao chép các tập tin vào. 190 00:09:15,810 --> 00:09:19,490 Nó khá dễ dàng để sao chép một tập tin, vì vậy chúng ta hãy làm điều đó. 191 00:09:19,490 --> 00:09:20,640 >> Vì vậy, chúng tôi trở lại trong IDE. 192 00:09:20,640 --> 00:09:24,540 Tôi sẽ liệt kê các nội dung của thư mục hiện tại của tôi với ls. 193 00:09:24,540 --> 00:09:28,310 Bây giờ, chúng ta hãy nói rằng tôi muốn để tạo một bản sao của hello.txt. 194 00:09:28,310 --> 00:09:32,120 Một lần nữa, từ cây tập tin trên trái, giao diện đồ họa, 195 00:09:32,120 --> 00:09:35,969 Tôi có thể nhấp chuột phải vào hello.txt, tạo một bản sao, dán các bản sao. 196 00:09:35,969 --> 00:09:38,260 Nhưng tôi có thể làm điều đó khá nhanh chóng tại dòng lệnh quá. 197 00:09:38,260 --> 00:09:42,520 >> Hãy nói rằng tôi muốn sao chép hello.txt để hi.txt. 198 00:09:42,520 --> 00:09:45,850 Tôi có thể CP, không gian, hello.txt. 199 00:09:45,850 --> 00:09:48,850 Đó là tập tin nguồn của tôi, vì vậy đó là lý do tại sao Tôi sẽ chọn một trong đó đầu tiên. 200 00:09:48,850 --> 00:09:51,058 Và sau đó tôi cần phải đặt tên cho file đích, hi.txt. 201 00:09:51,058 --> 00:09:53,690 202 00:09:53,690 --> 00:09:54,620 Tôi nhấn Enter. 203 00:09:54,620 --> 00:09:57,930 Và nếu tôi liệt kê các nội dung của tôi thư mục một lần nữa, có của hi.txt. 204 00:09:57,930 --> 00:09:59,220 Tôi đã thực hiện một bản sao của nó. 205 00:09:59,220 --> 00:10:01,090 Và trên thực tế, nếu tôi đi vào hi.txt, tôi có thể 206 00:10:01,090 --> 00:10:04,030 thấy rằng nó sẽ là một chính xác lặp lại tất cả mọi thứ mà 207 00:10:04,030 --> 00:10:08,330 tồn tại trong tập tin hello.txt của tôi. 208 00:10:08,330 --> 00:10:09,790 >> Vì vậy, đó là cách bạn sao chép một tập tin. 209 00:10:09,790 --> 00:10:12,680 Nhưng nếu bạn muốn sao chép toàn bộ thư mục? 210 00:10:12,680 --> 00:10:16,510 Vì vậy, cho một thứ hai, chúng ta hãy có một cái nhìn vào những gì trong thư mục pset0 của tôi. 211 00:10:16,510 --> 00:10:23,950 Nếu tôi cd pset0 và danh sách các nội dung, Tôi có một thư mục gọi là, mẫu, 212 00:10:23,950 --> 00:10:26,252 và một tập tin đầu, scratch.sb2. 213 00:10:26,252 --> 00:10:27,210 Vì vậy, đó là tốt để biết. 214 00:10:27,210 --> 00:10:29,800 Vì vậy, chúng ta cần xóa màn hình, và tôi sẽ quay trở lại 215 00:10:29,800 --> 00:10:32,870 vào thư mục workspace của tôi cho một thứ hai. 216 00:10:32,870 --> 00:10:36,630 >> Hãy nói rằng, bây giờ, tôi muốn tạo một bản sao của thư mục pset0 của tôi. 217 00:10:36,630 --> 00:10:42,940 Tôi không thể chỉ nói cp pset0 pset3, ví dụ. 218 00:10:42,940 --> 00:10:46,220 Bạn nhận được thông báo này kỳ lạ, bỏ qua thư mục pset0. 219 00:10:46,220 --> 00:10:47,439 Tại sao bạn nhận được tin nhắn đó? 220 00:10:47,439 --> 00:10:49,730 Vâng, nó chỉ ra rằng, khi bạn có một thư mục đó 221 00:10:49,730 --> 00:10:53,150 có những thứ khác bên trong của nó, các lệnh cp không thực sự 222 00:10:53,150 --> 00:10:55,590 nhất thiết phải biết phải làm gì với nó. 223 00:10:55,590 --> 00:10:59,670 >> Chúng tôi cần phải rõ ràng cho Linux, các thiết bị đầu cuối, 224 00:10:59,670 --> 00:11:03,720 Tôi muốn bạn để sao chép thư mục pset0 và bản sao 225 00:11:03,720 --> 00:11:07,530 mỗi thư mục đó tồn tại bên trong của nó và mọi tập tin 226 00:11:07,530 --> 00:11:08,750 tồn tại bên trong của nó. 227 00:11:08,750 --> 00:11:13,270 Nói cách khác, tôi cần bạn đệ quy lặn xuống pset0 228 00:11:13,270 --> 00:11:15,660 và tạo một bản sao của tất cả mọi thứ trong đó. 229 00:11:15,660 --> 00:11:25,280 >> Nếu tôi muốn làm điều đó, những gì tôi có thể làm là cp-r, cho đệ quy, pset3 pset0. 230 00:11:25,280 --> 00:11:26,850 Nhấn Enter. 231 00:11:26,850 --> 00:11:29,290 Bây giờ, nếu tôi liệt kê nội dung của thư mục của tôi, 232 00:11:29,290 --> 00:11:32,180 Tôi thấy có những pset3 thư mục mà tôi có thể làm việc với. 233 00:11:32,180 --> 00:11:36,990 Và nếu tôi cd vào pset3 bây giờ và sau đó liệt kê các nội dung, nhìn, 234 00:11:36,990 --> 00:11:39,594 có mẫu và scratch.sb2 một lần nữa. 235 00:11:39,594 --> 00:11:40,510 Vì vậy, đó là khá mát mẻ. 236 00:11:40,510 --> 00:11:43,819 Vì vậy, đó là cách bạn có thể sao chép toàn bộ một thư mục, và không chỉ là một tập tin duy nhất. 237 00:11:43,819 --> 00:11:45,860 Vì vậy, nếu bạn muốn sao chép một thư mục, chỉ cần nhớ 238 00:11:45,860 --> 00:11:49,830 sử dụng cờ -r khi bạn làm việc với các lệnh cp. 239 00:11:49,830 --> 00:11:50,330 Được rồi. 240 00:11:50,330 --> 00:11:52,320 Vì vậy, tôi đã sao chép một tập tin, nhưng Tôi đã thực hiện nó bằng cách sai lầm. 241 00:11:52,320 --> 00:11:53,695 Và bây giờ, tôi muốn được thoát khỏi nó. 242 00:11:53,695 --> 00:11:54,850 Làm thế nào để làm điều đó? 243 00:11:54,850 --> 00:11:56,830 Một lần nữa, nếu bạn đã quen thuộc với một giao diện GUI, 244 00:11:56,830 --> 00:11:58,310 bạn có thể kích chuột phải và chỉ chọn Delete. 245 00:11:58,310 --> 00:12:00,630 Và nó sẽ gửi nó cho các thùng rác hoặc Recycle Bin. 246 00:12:00,630 --> 00:12:03,320 Nhưng tại các dòng lệnh, chúng tôi chỉ có thể gõ rm, cho remove, 247 00:12:03,320 --> 00:12:05,580 và sau đó là tên của nộp chúng ta muốn thoát khỏi. 248 00:12:05,580 --> 00:12:08,614 >> Bây giờ, rm là rất cẩn thận. 249 00:12:08,614 --> 00:12:11,280 Nó rất nhiều kiểm tra hai lần, để đảm bảo rằng bạn thực sự 250 00:12:11,280 --> 00:12:12,377 muốn xóa các tập tin. 251 00:12:12,377 --> 00:12:15,460 Nó không muốn thực hiện bất kỳ sai lầm, bởi vì không có Recycle Bin ở đây. 252 00:12:15,460 --> 00:12:17,010 Một khi chúng ta xóa một tập tin, nó biến mất. 253 00:12:17,010 --> 00:12:18,710 Và có thực sự không có cách nào để khôi phục lại nó. 254 00:12:18,710 --> 00:12:20,730 Vì vậy, chúng ta cần phải được khá cẩn thận, và như vậy rm 255 00:12:20,730 --> 00:12:23,110 là có được thực sự cẩn thận đối với chúng tôi. 256 00:12:23,110 --> 00:12:27,120 >> Vì vậy, chúng ta hãy quay trở lại với IDE và thoát khỏi tập tin đó hi.txt 257 00:12:27,120 --> 00:12:29,640 mà tôi tạo ra một phút trước đây với bản sao. 258 00:12:29,640 --> 00:12:30,560 Vì vậy, chúng tôi đang ở trong IDE. 259 00:12:30,560 --> 00:12:33,180 Và tôi liệt kê nội dung của thư mục của tôi một lần nữa, chỉ để cung cấp cho chúng tôi một số ngữ cảnh. 260 00:12:33,180 --> 00:12:36,500 Tôi có nghĩa là, bạn có thể thấy rằng có hi.txt, mà tôi tạo ra một chút thời gian trước đây. 261 00:12:36,500 --> 00:12:38,196 Bây giờ, tôi muốn được thoát khỏi nó. 262 00:12:38,196 --> 00:12:38,820 Làm sao tôi làm được? 263 00:12:38,820 --> 00:12:39,810 >> Một lần nữa, chỉ rm. 264 00:12:39,810 --> 00:12:46,220 Vì vậy, tôi có thể gõ rm hi.txt và nhấn Enter. 265 00:12:46,220 --> 00:12:47,970 Và có rm phúc thực sự cẩn thận cho chúng tôi 266 00:12:47,970 --> 00:12:50,178 và đảm bảo rằng chúng tôi thực sự muốn xóa file này. 267 00:12:50,178 --> 00:12:52,784 Bạn có thực sự muốn loại bỏ thường xuyên trống rỗng tập hi.txt? 268 00:12:52,784 --> 00:12:55,200 Đó là giống như một hành hệ thống, giống như Windows hay Mac, 269 00:12:55,200 --> 00:12:56,310 mà bạn có thể quen thuộc với popping lên 270 00:12:56,310 --> 00:12:58,770 hộp mà nói là bạn thực sự chắc chắn rằng bạn muốn làm điều này. 271 00:12:58,770 --> 00:13:01,228 >> Tôi chắc rằng tôi muốn này, vì vậy tôi sẽ để gõ, yes-- 272 00:13:01,228 --> 00:13:04,390 hoặc tôi cũng có thể chỉ gõ y-- và nhấn Enter. 273 00:13:04,390 --> 00:13:08,620 Và nếu tôi liệt kê các nội dung của tôi thư mục một lần nữa, hi.txt đã biến mất. 274 00:13:08,620 --> 00:13:10,000 Không xấu, phải không? 275 00:13:10,000 --> 00:13:12,410 Hãy nhấn Control L, chỉ để thoát khỏi tất cả các công cụ này 276 00:13:12,410 --> 00:13:14,900 và nhận được chúng trở lại phía trên cùng của màn hình. 277 00:13:14,900 --> 00:13:18,520 >> Bây giờ, có một cách để ngắn mạch rm, vì vậy 278 00:13:18,520 --> 00:13:20,090 rằng nó không yêu cầu chúng tôi câu hỏi đó. 279 00:13:20,090 --> 00:13:22,060 Chúng tôi thực sự biết chúng ta muốn để thoát khỏi tập tin đó, 280 00:13:22,060 --> 00:13:23,490 và chúng tôi thậm chí không muốn để được hỏi những câu hỏi. 281 00:13:23,490 --> 00:13:24,720 Làm thế nào để chúng tôi làm điều đó? 282 00:13:24,720 --> 00:13:27,180 Vâng, chúng ta có thể chỉ định một thêm cờ, giống như chúng ta 283 00:13:27,180 --> 00:13:30,400 đã làm với cp, nơi chúng tôi có thể thêm vào lá cờ -r, 284 00:13:30,400 --> 00:13:32,800 để đệ quy sao chép vào một thư mục. 285 00:13:32,800 --> 00:13:35,630 Có lá cờ khác cho rm, đó là -f, 286 00:13:35,630 --> 00:13:39,470 mà là để buộc rm để làm chính xác những gì chúng ta đang nói với nó để làm. 287 00:13:39,470 --> 00:13:44,610 >> Vì vậy, chúng ta hãy nói rằng, bây giờ, tôi muốn để thoát khỏi tập tin hello.txt của tôi. 288 00:13:44,610 --> 00:13:46,490 Tôi không muốn một trong đó một trong hai. 289 00:13:46,490 --> 00:13:47,370 Tôi có thể làm gì? 290 00:13:47,370 --> 00:13:54,710 Vâng, tôi có thể rm -f hello.txt. 291 00:13:54,710 --> 00:13:57,530 Những gì bạn nghĩ là sẽ xảy ra ở đây? 292 00:13:57,530 --> 00:13:58,030 Nó đi rồi. 293 00:13:58,030 --> 00:13:59,363 Thậm chí đã không hỏi tôi câu hỏi. 294 00:13:59,363 --> 00:14:03,600 Và trên thực tế, nếu tôi liệt kê nội dung các thư mục của tôi một lần nữa, nó biến mất. 295 00:14:03,600 --> 00:14:05,750 Không có undo đây. 296 00:14:05,750 --> 00:14:09,554 hello.txt đã biến mất, và tôi đã không thậm chí còn hỏi nếu tôi muốn xóa nó. 297 00:14:09,554 --> 00:14:11,595 Nếu tôi muốn được thoát khỏi của toàn bộ một thư mục? 298 00:14:11,595 --> 00:14:14,180 299 00:14:14,180 --> 00:14:17,039 Cách bạn làm điều đó là rất tương tự sao chép. 300 00:14:17,039 --> 00:14:19,080 Nếu bạn muốn xóa một thư mục, bạn không chỉ 301 00:14:19,080 --> 00:14:22,121 muốn xóa thư mục, bạn muốn xóa tất cả mọi thứ bên trong của nó. 302 00:14:22,121 --> 00:14:26,250 Và do đó, bạn sử dụng -r, để đệ quy xóa một thư mục. 303 00:14:26,250 --> 00:14:28,600 >> Vì vậy, hãy rm -r pset2. 304 00:14:28,600 --> 00:14:31,870 Tôi không thực sự làm việc trên pset2, vì vậy tôi có thể thoát khỏi thư mục đó. 305 00:14:31,870 --> 00:14:33,040 Tôi nhấn Enter. 306 00:14:33,040 --> 00:14:35,050 Tôi muốn loại bỏ các thư mục, pset2? 307 00:14:35,050 --> 00:14:37,160 Có, tôi làm. 308 00:14:37,160 --> 00:14:41,150 Và nếu tôi liệt kê các nội dung của thư mục của tôi một lần nữa, nó biến mất. 309 00:14:41,150 --> 00:14:41,650 Được rồi? 310 00:14:41,650 --> 00:14:43,739 >> Một biến thể hơn về chủ đề này. 311 00:14:43,739 --> 00:14:46,280 Vì vậy, tôi sẽ xóa màn hình một lần nữa, để đưa mọi thứ ở đầu trang. 312 00:14:46,280 --> 00:14:47,420 Lượt ls. 313 00:14:47,420 --> 00:14:49,890 Bây giờ, tôi muốn được thoát khỏi của thư mục pset3 của tôi, 314 00:14:49,890 --> 00:14:52,810 và tôi thực sự biết tôi muốn thoát khỏi thư mục pset3 của tôi. 315 00:14:52,810 --> 00:15:00,120 Tôi có thể đệ quy và ép buộc loại bỏ thư mục pset3 của tôi. 316 00:15:00,120 --> 00:15:03,900 >> Bây giờ, bạn sẽ được thực sự cẩn thận khi bạn đang sử dụng rm -rf. 317 00:15:03,900 --> 00:15:06,784 Như bạn chương trình nhiều hơn, nó sẽ được một cái gì đó bạn chỉ cần làm thực sự nhanh chóng. 318 00:15:06,784 --> 00:15:08,200 Và trong thực tế, tôi làm tất cả các thời gian. 319 00:15:08,200 --> 00:15:10,380 Nhưng nó có thể dẫn đến một số hậu quả tai hại, 320 00:15:10,380 --> 00:15:12,340 nếu bạn vô tình xóa những điều sai trái. 321 00:15:12,340 --> 00:15:15,089 Vì vậy, tôi muốn bạn biết rằng này là một lựa chọn có sẵn cho bạn, 322 00:15:15,089 --> 00:15:17,220 nhưng sử dụng một cách tiết kiệm, và sử dụng nó một cách thận trọng. 323 00:15:17,220 --> 00:15:20,910 >> Tôi biết một thực tế tôi không làm việc về vấn đề của tôi tập 3 nữa, vì vậy tôi 324 00:15:20,910 --> 00:15:22,550 đi để có được thoát khỏi tất cả các tập tin. 325 00:15:22,550 --> 00:15:26,420 Và tôi biết tôi không muốn được yêu mỗi lần duy nhất nếu tôi muốn xóa 326 00:15:26,420 --> 00:15:30,640 một tập tin, vì vậy tôi sẽ để rm -rf pset3. 327 00:15:30,640 --> 00:15:32,640 Thậm chí đã không hỏi tôi nếu tôi muốn được thoát khỏi nó. 328 00:15:32,640 --> 00:15:33,840 Tôi nhấn ls. 329 00:15:33,840 --> 00:15:35,680 pset3 đã biến mất. 330 00:15:35,680 --> 00:15:39,730 Vì vậy, đó là tất cả các biến thể bạn có thể sử dụng để xóa các file với rm. 331 00:15:39,730 --> 00:15:43,620 >> Các lệnh dòng lệnh cuối cùng đó là sẽ khá hữu ích cho bạn 332 00:15:43,620 --> 00:15:46,391 là mv, mà là viết tắt cho di chuyển. 333 00:15:46,391 --> 00:15:48,960 Move là về cơ bản tương đương để đổi tên. 334 00:15:48,960 --> 00:15:53,870 Nó di chuyển một tập tin từ một địa điểm khác, các nguồn đến đích. 335 00:15:53,870 --> 00:15:59,400 Hãy xem nơi sử dụng một sức mạnh di chuyển được thuận tiện tại cửa sổ terminal. 336 00:15:59,400 --> 00:16:02,070 >> Vì vậy, tôi đang ở trong pset1 của tôi thư mục, và tôi đã nhận thấy 337 00:16:02,070 --> 00:16:03,860 một cái gì đó đã đi sai một chút. 338 00:16:03,860 --> 00:16:08,620 Tôi đã làm việc về vấn đề tham lam của tôi, nhưng tôi vô tình đặt tên cho nó GReddy. 339 00:16:08,620 --> 00:16:11,380 Vì vậy, khi tôi cố gắng và chạy nó thông qua check50, nó không thực sự làm việc. 340 00:16:11,380 --> 00:16:12,630 Tôi có một vài lựa chọn. 341 00:16:12,630 --> 00:16:16,220 Chúng ta có thể làm những gì chúng ta đã làm trước đó, mà là để tạo một bản sao của tập tin. 342 00:16:16,220 --> 00:16:23,960 Tôi có thể sao chép greddy.c để greedy.c, phải không? 343 00:16:23,960 --> 00:16:25,580 Nhấn Enter. 344 00:16:25,580 --> 00:16:28,180 Tôi thấy rằng cả hai tập tin đang có. 345 00:16:28,180 --> 00:16:36,337 Và sau đó tôi có thể rm, để loại bỏ, greddy.c. 346 00:16:36,337 --> 00:16:37,170 Điều đó được thoát khỏi nó. 347 00:16:37,170 --> 00:16:40,920 Vì vậy, đó sẽ làm việc, sau khi tôi xác nhận mà tôi muốn được thoát khỏi nó. 348 00:16:40,920 --> 00:16:44,770 Và tôi có một cách hiệu quả greddy.c đổi tên thành greedy.c. 349 00:16:44,770 --> 00:16:48,460 Tôi sao chép nó, và sau đó loại bỏ các gốc. 350 00:16:48,460 --> 00:16:50,170 >> Nhưng đó là một quá trình gồm nhiều bước. 351 00:16:50,170 --> 00:16:51,670 Và chắc chắn, có một cách tốt hơn. 352 00:16:51,670 --> 00:16:52,420 Trong thực tế, có. 353 00:16:52,420 --> 00:16:55,810 Vì vậy, hãy nhấn Control L, chỉ để mang lại điều này, 354 00:16:55,810 --> 00:16:58,680 và danh sách các nội dung các thư mục của tôi một lần nữa. 355 00:16:58,680 --> 00:17:00,350 >> Vì vậy, chúng ta hãy nói, oh, tôi đã thực hiện một sai lầm. 356 00:17:00,350 --> 00:17:03,470 Tôi thực sự thực sự muốn để gọi đó là tập tin greddy.c. 357 00:17:03,470 --> 00:17:11,369 Trong một ngã swoop, tôi có thể loại di chuyển greedy.c để greddy.c. 358 00:17:11,369 --> 00:17:12,470 Nhấn Enter. 359 00:17:12,470 --> 00:17:15,210 Và bây giờ, tôi đã không có sao chép và xóa nó, 360 00:17:15,210 --> 00:17:16,880 Tôi chỉ có thể đổi tên nó. 361 00:17:16,880 --> 00:17:18,710 One-stop shopping. 362 00:17:18,710 --> 00:17:21,160 >> Giờ đây, có rất nhiều khác các tiện ích dòng lệnh cơ bản 363 00:17:21,160 --> 00:17:22,640 mà bạn có thể sử dụng với dòng lệnh Linux. 364 00:17:22,640 --> 00:17:24,990 Và chúng ta sẽ thảo luận nhiều của chúng trong tương lai trong CS50. 365 00:17:24,990 --> 00:17:27,948 Nhưng hiện nay, chỉ cần nhận được bàn chân của bạn ướt với làm việc với thiết bị đầu cuối này 366 00:17:27,948 --> 00:17:30,540 môi trường, năm lệnh sẽ giúp bạn khá xa 367 00:17:30,540 --> 00:17:34,990 trong điều hướng xung quanh và làm việc với các tập tin trong IDE của bạn 368 00:17:34,990 --> 00:17:37,770 hoặc trong bất cứ dựa trên Linux hệ điều hành bạn đang sử dụng. 369 00:17:37,770 --> 00:17:40,580 >> Nếu bạn tò mò và bạn muốn nhìn về phía trước một chút tại một số 370 00:17:40,580 --> 00:17:43,420 các lệnh dòng lệnh chúng ta sẽ sử dụng trong tương lai, 371 00:17:43,420 --> 00:17:46,930 đây là một danh sách của một cặp vợ chồng của cái chung. 372 00:17:46,930 --> 00:17:47,820 Tôi Doug Lloyd. 373 00:17:47,820 --> 00:17:49,860 Đây là CS50. 374 00:17:49,860 --> 00:17:52,598