附录练习 5-7 笨办法学Python3

附录练习 5 切换目录 (cd)

在这个练习中,你将学习如何使用 cd 命令从一个目录切换到另一个目录。

55.6.1 跟我做

在这部分练习中我会再给你一次指导说明:

  • 不用输入 $ (Unix 系统)或者 > (Windows 系统)。
  • 你输入 $ 或者 > 后面的内容,然后回车。比如如果我写的是 $ cd,你就只用输入 cd 然后回车就行。
  • 回车之后你会在 $ 或者 > 之后看到你的输出结果。
  • 每次练习之前要先用 pwdcd ~ 回到 home,回到你最开始的地方。

Linux/macOS

练习 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

练习 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 你学到的

你已经在上一个练习中创建了以上这些目录,你刚才只是用 cd 命令在这些目录之间来回移动,同时在练习中我还用了 pwd 命令来看自己当前所处的位置,所以别把 pwd 输出的内容当作命令输入进去。例如,在第三行,你看到 ~/temp,但那只是 pwd 命令的输出结果,不要把它作为你要输入的内容。

你还应该看到我如何使用 .. 命令来沿着路径向上。

55.6.3 附加练习

在一个拥有图形用户界面(graphical user interface,GUI) 的电脑上学习命令行界面(command line interface,CLI) 的一个非常重要的事情就是要明白它们是如何一起工作的。我最早开始使用计算机的时候还没有 GUI,我们在 DOS 界面上进行所有的操作。后来,当计算机变成强大的图形界面时,我很容易就能把一些 CLI 的目录和 GUI上面的目录和 GUI 的窗口和文件夹对应上。

然而如今大多数人对 CLI、路径和目录毫无概念。事实上,也很难教会他们。唯一可能的办法就是持续地去用 CLI,直到有一天你用起 CLI 来会跟 GUI 一样自然流畅。

这就需要你花时间去寻找 GUI 下文件查看器里的目录,然后在 CLI 下切换到这些目录。以下是你接下来要做的:

  • 用一个命令切换到 apple 目录下。
  • 用一个命令切换回 temp 目录,但不是续着上一步来做。
  • 试试如何用一个命令切换到你的“home 目录”。
  • 切换到你的 Document 目录下,然后用 GUI 下的文件查看器找到它。(MacOS 下是 Finder,Windows 下是文件资源管理器,即“我的电脑”或“计算机”)
  • 切换到你的 Downloads 目录,然后用你的文件浏览器找到它。
  • 用你的文件浏览器找到其他目录,然后在 CLI 下切换到该目录。
  • 还记得你给目录名加过引号吗?你也可以在命令中加入引号,比如,如果你有一个目录是 I Have Fun,然后你可以输入:cd "I Have Fun"

附录练习 6 列示目录 (ls)

在这个练习中你将学习如何用 ls 命令列示一个目录中的内容。

55.7.1 跟我做

在你开始之前,确保你回到 temp 的上一层目录。如果你不知道你在哪儿,用 pwd 来查看,然后切换到要求的地方。

Linux/macOS

练习 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

练习 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 你学到的

ls 命令列示出了你当前所在目录的内容。你能看到我使用 cd 命令在不同目录之间切换,然后列示出它们里面有些什么内容,然后让我决定接下来要去哪个目录。

ls 命令有很多选项,我们会在学习 help 命令时学习如何获取帮助。

55.7.3 附加练习

  • 把每一个命令都输一遍,你必须通过输入来学习这些命令,只是读它们是不够的。
  • 在 Unix 下,让你在 temp 目录下,试试 ls -lR 命令。
  • 在 Windows 系统下,用 dir -R 做同样的操作。
  • cd 去到你电脑上的其他目录,然后用 ls 看看它们里面有什么。
  • 把新的问题添加到你的本子上。我知道你可能会有一些,因为关于这个命令的内容我没有全讲到。
  • 记住如果你迷路了,用 lspwd 命令查看你在哪儿,然后用 cd 命令去到你应该去的地方。

附录练习 7 移除目录 (rmdir)

在这个练习中,你将学习如何移除一个空目录。

55.8.1 跟我做

Linux/macOS

练习 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 系统下尝试用 rmdir 命令, 但是系统拒绝移除这个目录,即使你百分百确定它是空的,事实上的确有个文件在里面,叫做 .DS_Store 。遇到这种情况,输入 rm -rf (将 替换成你要移除的目录名)。

Windows

练习 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 你学到的

我现在开始把这些目录混在一起用了,所以你一定要专心,确保自己都输对了。如果你犯错了,只能说明你不专心。如果你发现自己犯了很多错,休息一下,或者干脆今天就不学了,明天再继续。

在这个例子中,你学会了如何移除一个目录,非常简单。你只需要去到它的上层目录,然后输入 rmdir

,用你要移除的目录名替换掉 即可。

55.8.3 附加练习

  • 创建 20 个目录,然后移除它们。
  • 创建一个 10 层路径的目录,然后一次移除一个,就像我之前做的那样。
  • 如果你试着移除一个有内容的目录,你会收到报错。我会在后面的练习中教你如何移除它们。

你可能感兴趣的:(附录练习 5-7 笨办法学Python3)