命令行教程,第一部分 — 导航目录

如果你已经在 Mac 上打开了 Terminal 应用程序,或者在 Windows 上打开了 Git Bash 应用程序,那么你可以开始执行此命令行教程。

教程概述

在本教程中,你将学习如何使用命令行浏览文件和文件夹,创建、打开、移动和删除文件和文件夹以及运行 Python 文件。

我们先来了解如何导航电脑的文件系统。花点时间考虑如何使用传统的鼠标和图形用户界面(GUI)导航计算机。下面显示的 GUI 提供了一个用于在计算机上执行任务的可视界面。

使用 GUI 在电脑上导航文件和文件夹。

虽然上图显示了 Mac 上的 GUI,但 Windows 的基本元素是相同的。你可能会注意到以下内容:

  • 显示了图形化表现的文件和文件夹的窗口;
  • 通过鼠标点击来实现的导航文件或文件夹的打开过程;
  • 点击后更新的窗口,显示打开的文件夹内容;
  • 通过导航历史记录前进或后退的选项。

比较

让我们用一个具体的例子来比较,使用 GUI 和使用命令行来导航文件的过程。对于这个例子,请考虑以下的示例文件结构。

Sample file structure.

要继续本节中的任务,请在自己的计算机上完成以下步骤:

  1. 在桌面上,创建一个 TopSecret 文件夹;
  2. 在 TopSecret 文件夹中,创建另一个文件夹,名称为 Notes
  3. 在 TopSecret 文件夹中,再创建一个文件夹,名称为 Photos
  4. 最后,在 Photos 文件夹中,添加一张图片(任何图片都可以),并命名图片为 adorable.jpg

我们在这个例子中的任务是导航至桌面,打开 TopSecret 文件夹,打开 Photos 文件夹,打开(查看)adorable.jpg 图片。

通过 GUI 导航

使用 GUI,导航将如下所示:

通过 GUI 导航文件结构

使用命令行导航

使用命令行,导航意味着与计算机的不同类型的交互。在我们浏览导航过程之前,你需要熟悉一些新的术语和命令。

我们首先定义一个目录。目录只不过是文件夹的另一个名称。当我们在命令行工作时,我们将把文件夹称为目录。

计算机的文件和文件夹的结构就像一棵树。最开始是根目录,最终分支到许多其他文件夹(每个文件夹都有可能包含更多的文件夹和文件)。当我们浏览计算机文件系统时,我们在做的,实际上是在这个类似树结构的某些分支上来回走动。当我们进入一个命令行界面时,我们应该将自己看作是位于计算机上的某个特定位置 —— 这意味着我们目前位于某个目录中。默认情况下,当我们打开 shell 时,我们从计算机上的 Home 文件夹开始,用一个波浪符号(~)表示。

我们可以在 shell 中注意到一个光标出现在一个美元符号($)之后。这就是我们输入命令的地方。

pwd 命令

第一个对我们有用的命令叫做 pwd,代表“显示当前工作目录”(print working directory)。当我们键入这个命令并按下键盘上的 RETURN 或 ENTER 键时,shell 将会响应,输出一个绝对路径,通向计算机文件结构系统中我们所在的位置。下面示例中的输出路径 —— / Users / udacity —— 包含一系列用斜杠(/)分隔的文件夹名称,给出从计算机根目录到我们当前位置的路径。

使用 pwd 命令。

注意: 默认情况下,当我们打开 shell 时,我们将从我们电脑的主目录开始,在命令提示符里以一个波浪符号(~)表示。你自己的计算机主目录路径可能会因你的用户名和操作系统而异。

ls 命令

要查看目录的内容,我们可以使用 ls(意为 list 列出)命令,如下所示。

使用 ls 命令。

注意: 如果要查看目录中的所有文件(包括隐藏的文件),可以添加一个标志 - ls -a - 列出所有内容。隐藏的文件将在它们的名称前面出现一个 .

open 命令

如果要打开文件或目录,可以在 Mac 上使用 open 命令。请注意,如果你在 Windows 上使用 Git Bash(根据之前的安装说明),你很可能必须使用 start 命令而不是 open。最后,Ubuntu 用户需要使用 xdg-open 命令。

要使用 open 命令,你可以键入 open,后跟一个空格,然后是你要打开的文件或目录的名称。例如,如果你从主目录开始,并且看到它包含一个 Downloads 目录,则可以通过键入以下内容打开 Downloads 目录:

~ $ open Downloads

打开 Downloads 目录将打开一个窗口(通过 GUI)显示该目录的内容。

使用 open 命令。

注意: 为了更高的效率,你可以使用键盘上的 TAB 键自动补齐当前目录下的文件和目录的名称。你可能会注意到,自动补齐目录名称将添加一个尾部斜杠(/)。

要打开当前目录,你可以输入以下命令:

~ $ open .

这个 . 在这个命令中表示你的当前目录。

cd 命令

回想以下,当你打开 shell 时,你是从你的计算机主目录开始的,缩写为~提示符。如果要从主目录跳转到另一个目录,可以使用 cd 命令,意为更改目录(change directory)。

要跳转到一个不同的目录,你需要提供新目录的名称,例如,从主目录跳转到桌面:

~ $ cd Desktop

以上命令可以使你从主目录移动到桌面目录,如下所示。

使用 cd 命令来访问 Desktop 目录

请注意,当我们当前目录从主目录~更改为 Desktop 目录时,提示文本也从~ $更改为 ~/Desktop $。这是因为默认情况下,提示符 $ 之前的文本设置为在计算机文件结构中显示当前位置的绝对路径。如果你曾深入到计算机文件结构中,这可能是一个有用的提示。(或者,你可以随时使用 pwd 命令显示出你的工作目录!)

更改目录后,你可以轻松访问该目录中包含的文件和文件夹。请注意下面的图片,ls 命令现在显示 Desktop 的内容,而不再是主目录的内容。

使用 ls 命令列出新的工作目录(Desktop)中的内容。

正如我们可以进入到更深一层的计算机文件结构中,我们也可以回到上一层目录,如下所示:

~/Desktop $ cd ..

使用 .. 表示父目录,或者说是我们当前工作目录的上一级目录。

使用 cd .. 命令跳转到我们当前目录的父目录。

最后,无论我们在哪里,只要我们单纯地键入 cd 命令,不带任何的目标目录,我们将会回到主目录。

现在,你已经学习了 pwdlsopen 和 cd 命令,你将能够用命令行导航计算机上的目录。

我们来回顾一下本教程开始时设置的比较 —— 使用 GUI 导航示例文件结构,使用命令行导航该结构。

通过 GUI 导航涉及下列步骤:

  • 导航到桌面
  • 打开“TopSecret”文件夹
  • 打开“Photos”文件夹
  • 查看“adorable.jpg”图片

相较而言,通过命令行可以有很多种方法达成同样的目的。一种方法是通过计算机的文件结构(从主目录开始),直到达到并打开 adorable.jpg 文件。你可以使用以下一系列命令来做到这一点:(下图中有对应的输出显示)

~ $ cd Desktop
~/Desktop $ cd TopSecret
~/Desktop/TopSecret $ ls
~/Desktop/TopSecret $ cd Photos
~/Desktop/TopSecret/Photos $ ls
~Desktop/TopSecret/Photos $ open adorable.jpg

事实证明,如果你将目录路径“链接”在一起,你可以使用较少的命令到达相同的目标。例如,你可以使用单个命令直接导航到 Photos 目录,然后从工作目录中打开 adorable.jpg 文件:

~ $ cd Desktop/TopSecret/Photos
~/Desktop/TopSecret/Photos $ open adorable.jpg

能够使用命令行导航你的计算机是一项非常有用的技能。在下一页,你将学习如何创建和删除文件和目录。

命令行教程,第一部分 — 导航目录相关推荐

  1. 制作iOS越狱deb插件+dpkg命令行教程

    iOS越狱deb插件的制作 dpkg命令行教程 deb安装包的制作 介绍  Cydia Sileo都是基于Debian开发的, 所以插件都是打包成.deb格式 deb包是Debian软件包格式,文件扩 ...

  2. 新一代 OIer 的快速入门命令行教程

    前言:为啥写这篇教程 几位家长:"欸wwh,你比赛时用啥写程序啊?" 我:"gedit + 命令行编译." (一番解释之后) 几位家长:"哦哦哦我明白 ...

  3. mysql命令行安装教程_MySQL命令行教程

    mysql命令行安装教程 1. MySQL简介 在之前的教程中 ,我讨论了有关MySQL服务器的安装以及MySQL数据库使用入门的问题. 在本文中,我们将详细讨论如何使用MySQL命令行执行各种操作, ...

  4. fedora,linux mint 命令行(终端)打开目录

    2019独角兽企业重金招聘Python工程师标准>>> 以前使用linux mint 13的时候,从命令行(终端)进入某个目录后,想以图形界面的方式打开该目录的方法是:gnome-o ...

  5. Linux_命令行基础及挂载和目录文件管理

    Linux命令行基础 Linux命令:用来实现某一类功能的指令或程序 . 在Linux中执行大多数命令时,都要找到命令所对应的程序 ]# hostname ]# which hostname #查询命 ...

  6. 【Unity 实战100例】 教程 专栏《导航目录帖》带你深入学习Unity实战经验

    目录

  7. 在命令行下快速进入某一级目录

    1.在文件资源管理器中打开想要进入的目录 2.找到显示路径的地方 3.输入cmd 4.回车

  8. [转]命令行在IIS添加虚拟目录

    来自:http://www.jb51.net/softjc/29702.html Mkwebdir -c LocalHost -w "Default Web Site" –v Co ...

  9. win10命令行cd进入到指定目录

    C:\Users\Administrator>cd /d D:\wiki cd /d

最新文章

  1. Git 删除已经提交的文件(Delete commits from a branch in Git)
  2. Android提升篇系列:Android项目代码优化实践
  3. 【Oracle】逻辑结构(TableSpace→Segment→Extent→Block)
  4. sql server之数据库语句优化
  5. 网络编程知识预备(4) ——了解应用层的HTTP协议与HTTPS协议
  6. python之sys.argv获取命令行的参数
  7. 【HDU - 1045】Fire Net (dfs 或二分图)
  8. 发送邮件程序报错454 Authentication failed以及POP3和SMTP简介
  9. 获得磁盘的飞鸽传书描述信息
  10. 最全数据结构详述: List VS IEnumerable VS IQueryable VS ICollection VS IDictionary
  11. 95-280-035-源码-资源管理-计算资源管理-TaskSlot
  12. JAVA:DOM解析XML和修改XML
  13. 2025年中国信息消费总额将达12万亿元
  14. mysql 拖库_【渗透测试】温故知新之拖库七种方法
  15. python word 英语音标_(完整word版)英语音标大全
  16. librosa的短时傅里叶实现librosa.stft()
  17. zuul网关的过滤器类型
  18. QT之鼠标点击事件学习
  19. 利用函数求出两个数的最大值
  20. 解决md文件中本地图片链接失效的方法

热门文章

  1. 用户层调用nl80211的例子
  2. java echarts 生成图片_java如何在后台生成echarts图表?实际代码展示
  3. Android实现仿支付宝流水
  4. 我是如何放弃投行回归技术的
  5. 短跑运动员求一个记时小程序
  6. 【每日随笔】毕业论文答辩 ② ( 问答环节注意点 | 答辩陈述以及问题回答流程 )
  7. Golang占位符大全
  8. C++11 enable_if 详解
  9. BI系统开发过程中用到的知识总结
  10. python爬虫网易云音乐评论最多的歌_使用Python爬一爬网易云音乐上那些评论火爆的歌曲...