附录练习 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 <dir> (将 <dir> 替换成你要移除的目录名)。

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 <dir> ,用你要移除的目录名替换掉 <dir> 即可。

55.8.3 附加练习

  • 创建 20 个目录,然后移除它们。
  • 创建一个 10 层路径的目录,然后一次移除一个,就像我之前做的那样。
  • 如果你试着移除一个有内容的目录,你会收到报错。我会在后面的练习中教你如何移除它们。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,588评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,456评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,146评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,387评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,481评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,510评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,522评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,296评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,745评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,039评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,202评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,901评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,538评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,165评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,415评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,081评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,085评论 2 352