附錄練習(xí) 5 切換目錄 (cd)
在這個練習(xí)中,你將學(xué)習(xí)如何使用 cd 命令從一個目錄切換到另一個目錄。
55.6.1 跟我做
在這部分練習(xí)中我會再給你一次指導(dǎo)說明:
- 不用輸入
$(Unix 系統(tǒng))或者>(Windows 系統(tǒng))。- 你輸入
$或者>后面的內(nèi)容,然后回車。比如如果我寫的是$ cd,你就只用輸入cd然后回車就行。- 回車之后你會在
$或者>之后看到你的輸出結(jié)果。- 每次練習(xí)之前要先用
pwd和cd ~回到 home,回到你最開始的地方。
Linux/macOS
練習(xí) 5 會話
$ cd temp
$ pwd
~/temp
$ cd stuff
$ pwd
~/temp/stuff
$ cd things
$ pwd
~/temp/stuff/things
$ cd orange/
$ pwd
~/temp/stuff/things/orange
$ cd apple/
$ pwd
~/temp/stuff/things/orange/apple
$ cd pear/
$ pwd
~/temp/stuff/things/orange/apple/pear
$ cd grape/
$ pwd
~/temp/stuff/things/orange/apple/pear/grape
$ cd ..
$ cd ..
$ pwd
~/temp/stuff/things/orange/apple
$ cd ..
$ cd ..
$ pwd
~/temp/stuff/things
$ cd ../../..
$ pwd
~/
$ cd temp/stuff/things/orange/apple/pear/grape
$ pwd
~/temp/stuff/things/orange/apple/pear/grape
$ cd ../../../../../../../
$ pwd
~/
$
Windows
練習(xí) 5 Windows 會話
> cd temp
> pwd
Path
----
C:\Users\zed\temp
> cd stuff
> pwd
Path
----
C:\Users\zed\temp\stuff
> cd things
> pwd
Path
----
C:\Users\zed\temp\stuff\things
> cd orange
> pwd
Path
----
C:\Users\zed\temp\stuff\things\orange
> cd apple
> pwd
Path
----
C:\Users\zed\temp\stuff\things\orange\apple
> cd pear
> pwd
Path
----
C:\Users\zed\temp\stuff\things\orange\apple\pear
> cd grape
> pwd
Path
----
C:\Users\zed\temp\stuff\things\orange\apple\pear\grape
> cd ..
> cd ..
> cd ..
> pwd
Path
----
C:\Users\zed\temp\stuff\things\orange
> cd ../..
> pwd
Path
----
C:\Users\zed\temp\stuff
> cd ..
> cd ..
> cd temp/stuff/things/orange/apple/pear/grape
> cd ../../../../../../../
> pwd
Path
----
C:\Users\zed
>
55.6.2 你學(xué)到的
你已經(jīng)在上一個練習(xí)中創(chuàng)建了以上這些目錄,你剛才只是用 cd 命令在這些目錄之間來回移動,同時在練習(xí)中我還用了 pwd 命令來看自己當(dāng)前所處的位置,所以別把 pwd 輸出的內(nèi)容當(dāng)作命令輸入進(jìn)去。例如,在第三行,你看到 ~/temp,但那只是 pwd 命令的輸出結(jié)果,不要把它作為你要輸入的內(nèi)容。
你還應(yīng)該看到我如何使用 .. 命令來沿著路徑向上。
55.6.3 附加練習(xí)
在一個擁有圖形用戶界面(graphical user interface,GUI) 的電腦上學(xué)習(xí)命令行界面(command line interface,CLI) 的一個非常重要的事情就是要明白它們是如何一起工作的。我最早開始使用計算機(jī)的時候還沒有 GUI,我們在 DOS 界面上進(jìn)行所有的操作。后來,當(dāng)計算機(jī)變成強(qiáng)大的圖形界面時,我很容易就能把一些 CLI 的目錄和 GUI上面的目錄和 GUI 的窗口和文件夾對應(yīng)上。
然而如今大多數(shù)人對 CLI、路徑和目錄毫無概念。事實上,也很難教會他們。唯一可能的辦法就是持續(xù)地去用 CLI,直到有一天你用起 CLI 來會跟 GUI 一樣自然流暢。
這就需要你花時間去尋找 GUI 下文件查看器里的目錄,然后在 CLI 下切換到這些目錄。以下是你接下來要做的:
- 用一個命令切換到
apple目錄下。- 用一個命令切換回
temp目錄,但不是續(xù)著上一步來做。- 試試如何用一個命令切換到你的“home 目錄”。
- 切換到你的 Document 目錄下,然后用 GUI 下的文件查看器找到它。(MacOS 下是 Finder,Windows 下是文件資源管理器,即“我的電腦”或“計算機(jī)”)
- 切換到你的 Downloads 目錄,然后用你的文件瀏覽器找到它。
- 用你的文件瀏覽器找到其他目錄,然后在 CLI 下切換到該目錄。
- 還記得你給目錄名加過引號嗎?你也可以在命令中加入引號,比如,如果你有一個目錄是
I Have Fun,然后你可以輸入:cd "I Have Fun"。
附錄練習(xí) 6 列示目錄 (ls)
在這個練習(xí)中你將學(xué)習(xí)如何用 ls 命令列示一個目錄中的內(nèi)容。
55.7.1 跟我做
在你開始之前,確保你回到 temp 的上一層目錄。如果你不知道你在哪兒,用 pwd 來查看,然后切換到要求的地方。
Linux/macOS
練習(xí) 6 會話
$ cd temp
$ ls stuff
$ cd stuff
$ ls things
$ cd things
$ ls orange
$ cd orange
$ ls apple
$ cd apple
$ ls pear
$ cd pear
$ ls
$ cd grape
$ ls
$ cd ..
$ ls grape
$ cd ../../../
$ ls orange
$ cd ../../
$ ls stuff
$
Windows
練習(xí) 6 Windows 會話
> cd temp
> ls
Directory: C:\Users\zed\temp
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 12/17/2011 9:03 AM stuff
> cd stuff
> ls
Directory: C:\Users\zed\temp\stuff
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 12/17/2011 9:03 AM things
> cd things
> ls
Directory: C:\Users\zed\temp\stuff\things
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 12/17/2011 9:03 AM orange
> cd orange
> ls
Directory: C:\Users\zed\temp\stuff\things\orange
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 12/17/2011 9:03 AM apple
> cd apple
> ls
Directory: C:\Users\zed\temp\stuff\things\orange\apple
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 12/17/2011 9:03 AM pear
> cd pear
> ls
Directory: C:\Users\zed\temp\stuff\things\orange\apple\pear
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 12/17/2011 9:03 AM grape
> cd grape
> ls
> cd ..
> ls
Directory: C:\Users\zed\temp\stuff\things\orange\apple\pear
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 12/17/2011 9:03 AM grape
> cd ..
> ls
Directory: C:\Users\zed\temp\stuff\things\orange\apple
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 12/17/2011 9:03 AM pear
> cd ../../..
> ls
Directory: C:\Users\zed\temp\stuff
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 12/17/2011 9:03 AM things
> cd ..
> ls
Directory: C:\Users\zed\temp
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 12/17/2011 9:03 AM stuff
>
55.7.2 你學(xué)到的
ls 命令列示出了你當(dāng)前所在目錄的內(nèi)容。你能看到我使用 cd 命令在不同目錄之間切換,然后列示出它們里面有些什么內(nèi)容,然后讓我決定接下來要去哪個目錄。
ls 命令有很多選項,我們會在學(xué)習(xí) help 命令時學(xué)習(xí)如何獲取幫助。
55.7.3 附加練習(xí)
- 把每一個命令都輸一遍,你必須通過輸入來學(xué)習(xí)這些命令,只是讀它們是不夠的。
- 在 Unix 下,讓你在 temp 目錄下,試試
ls -lR命令。- 在 Windows 系統(tǒng)下,用
dir -R做同樣的操作。- 用
cd去到你電腦上的其他目錄,然后用ls看看它們里面有什么。- 把新的問題添加到你的本子上。我知道你可能會有一些,因為關(guān)于這個命令的內(nèi)容我沒有全講到。
- 記住如果你迷路了,用
ls和pwd命令查看你在哪兒,然后用cd命令去到你應(yīng)該去的地方。
附錄練習(xí) 7 移除目錄 (rmdir)
在這個練習(xí)中,你將學(xué)習(xí)如何移除一個空目錄。
55.8.1 跟我做
Linux/macOS
練習(xí) 7 會話
$ cd temp
$ ls stuff
$ cd stuff/things/orange/apple/pear/grape/
$ cd ..
$ rmdir grape
$ cd ..
$ rmdir pear
$ cd ..
$ ls apple
$ rmdir apple
$ cd ..
$ ls orange
$ rmdir orange
$ cd ..
$ ls things
$ rmdir things
$ cd ..
$ ls stuff
$ rmdir stuff
$ pwd
~/temp
$
| 警告! |
|---|
如果你在 MacOS 系統(tǒng)下嘗試用 rmdir 命令, 但是系統(tǒng)拒絕移除這個目錄,即使你百分百確定它是空的,事實上的確有個文件在里面,叫做 .DS_Store 。遇到這種情況,輸入 rm -rf <dir> (將 <dir> 替換成你要移除的目錄名)。 |
Windows
練習(xí) 7 Windows 會話
> cd temp
> ls
Directory: C:\Users\zed\temp
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 12/17/2011 9:03 AM stuff
> cd stuff/things/orange/apple/pear/grape/
> cd ..
> rmdir grape
> cd ..
> rmdir pear
> cd ..
> rmdir apple
> cd ..
> rmdir orange
> cd ..
> ls
Directory: C:\Users\zed\temp\stuff
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 12/17/2011 9:14 AM things
> rmdir things
> cd ..
> ls
Directory: C:\Users\zed\temp
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 12/17/2011 9:14 AM stuff
> rmdir stuff
> pwd
Path
----
C:\Users\zed\temp
> cd ..
>
55.8.2 你學(xué)到的
我現(xiàn)在開始把這些目錄混在一起用了,所以你一定要專心,確保自己都輸對了。如果你犯錯了,只能說明你不專心。如果你發(fā)現(xiàn)自己犯了很多錯,休息一下,或者干脆今天就不學(xué)了,明天再繼續(xù)。
在這個例子中,你學(xué)會了如何移除一個目錄,非常簡單。你只需要去到它的上層目錄,然后輸入 rmdir <dir> ,用你要移除的目錄名替換掉 <dir> 即可。
55.8.3 附加練習(xí)
- 創(chuàng)建 20 個目錄,然后移除它們。
- 創(chuàng)建一個 10 層路徑的目錄,然后一次移除一個,就像我之前做的那樣。
- 如果你試著移除一個有內(nèi)容的目錄,你會收到報錯。我會在后面的練習(xí)中教你如何移除它們。