终端是个允许我们运行命令行的程序,运行命令前,先打开它。在MacOS系统上,可以使用macOS应用 Spotlight来打开终端窗口,Spotlight也有其他两种方式触发,一种是键入⌘␣(command和空格键),另一种是点击屏幕右上方的放大镜。一旦你触发了Spotlight,你就可以通过在Spotlight搜索条输入'terminal'开启终端程序。(如果你想使用更高级更个性化的终端程序,我建议安装iTerm, 大家可自愿安装)在Linux系统上,你可以点击终端图标(terminal icon)像图3所示,打开终端后,界面类似图4,可能系统不同,细节会有些许不同

图4:终端窗口

如果你使用不同的操作系统,我建议运用你成熟的技术能力(Box5)弄清楚怎样在你系统上打开终端;例如,如果要在Chromebook上学习如何打开命令行终端,可以Google搜索how to get a command line on a chromebook(在chromebook上如何获得命令行)

在1.基础那节中给出的命令行例子(如图2),包含了一条命令所有关键元素,就像插图5所示,提示(prompt)后紧跟一条命令(command, 正如给计算机一条命令), 接着是选项(option, 如'选择一个不同的选项'), 再接着是参数(argument, 如数学中'函数的参数'),理解提示(prompt)是由终端自动提供,而非自己键入,这非常必要。(确实,如果你要键入的话,它很可能导致一个错误)。此外,提示(prompt)的其他细节也会有不同,但这些细节对于本教程并不重要(见下Box3)。

图5:命令行剖析(可能你的提示会有差异)

Box3: 什么是提示(prompt)

每个命令行开始于一个符号或多个符号,旨在'提示'你采取行动。提示部分通常以美元标记符$结束,这也需依赖于系统的细节信息。例如,在一些系统中提示会像这样:Michael's MacBook Air:~ mhartl$,在图3中,提示又像是这样:[~]$,在图4中,提示又像这样[projects]$。最后,在我看来提示像这样: [learn_enough_command_line (master)]$.
基于本教程的目的,提示(prompt)的细节并不重要,但是我们会在本教程后的下个教程里,讨论自定义提示(prompt)的有效方法Learn Enough Text Editor to Be Dangerous

练习

本教程包含大量练习。我强烈建议在开始下一章节前先做做这些练习,养成这个好习惯,因为这些练习会帮助加强刚才所说内容,并提供刚才讨论的许多命令的基本练习。这些命令在通常情况下都会用到,但如果你突然卡住时,有时继续往前练习,以后再回看这些练习也是个好主意。的确,这同样也适用于主要教程部分, 因为有时确实会很惊讶,当下次回看这些之前觉得不可能的想法或很棘手的问题时,突然又变得很容易理解。

  1. 通过上图5,确定图6中每行的提示(prompt)、命令(command)、选项(option)、参数(argument)和光标(cursor)

    图6: 一些典型的命令

  2. 大多数现代的终端程序都可以创建多个标签,如图7所示,这对组织一系列相关的终端窗口非常有用。通过检查终端程序的菜单选项按钮,如图8所示,找出怎样创建标签。

    图7: 有3个tab的终端窗口

    图8: Mac操作系统上的终端默认的一些菜单选项

1.1《想成为黑客,不知道这些命令行可不行》(Learn Enough Command Line to Be Dangerous)——运行终端的更多相关文章

  1. 4.3《想成为黑客,不知道这些命令行可不行》(Learn Enough Command Line to Be Dangerous)—链接到目录

    在4.2章中我们已经会用cd进入到指定的目录中.这是导航最常见的用途之一,但是它还有几个值得关注的用途.第一个是使用cd ..(读作'see-dee 点点')返回当前目录级别的上一级: $ pwd / ...

  2. 2《想成为黑客,不知道这些命令行可不行》(Learn Enough Command Line to Be Dangerous)——操作文件

    已经学习了基本的命令,现在是时候学习操作文件了,这也是命令行的重要任务.还是基于本教程的事先规定,本教程是入门级的,不要求熟悉类似编辑文本的程序(这些文本编辑程序,将在下个系列教程中介绍, Learn ...

  3. 1.6《想成为黑客,不知道这些命令行可不行》(Learn Enough Command Line to Be Dangerous)——小结

    本章节学过的重要命令整理,见下表Table 2. 命令 描述 例子 echo <string> 向屏幕输出字符串 $ echo hello man <command> 显示命令 ...

  4. 3.1《想成为黑客,不知道这些命令行可不行》(Learn Enough Command Line to Be Dangerous)——下载文件

    首先,为了不手动创建一个长文件(这太麻烦了),我们将使用强大的curl(有时也写作"cURL")工具从网上下载一个文件,这个命令可以让命令行与URL交互.尽管这不是Unix核心命令 ...

  5. 2.3《想成为黑客,不知道这些命令行可不行》(Learn Enough Command Line to Be Dangerous)——重命名,复制,删除

    最常用的文件操作除了将文件列出来外,就应该是重命名,复制,删除了.正如将文件列出来一样,大多数现代操作系统为这些任务提供了用户图形界面,但是在许多场景中,用命令行还是会更方便. 使用mv命令重命名一个 ...

  6. 1.2《想成为黑客,不知道这些命令行可不行》(Learn Enough Command Line to Be Dangerous)——开始第一条命令

    现在开始准备运行我们的第一条命令了,在屏幕上打印'hello'.(字符打印的地方被称为'标准输出',通常指的是屏幕,很少指真的物理打印机设备).这条命令就是echo,这条命令的参数是想要输出的字符串或 ...

  7. 1.4《想成为黑客,不知道这些命令行可不行》(Learn Enough Command Line to Be Dangerous)——编辑命令

    在编辑模式中,命令行包括几个重复之前命令的功能.这些以及其他很多命令功能时常设计键盘上的特殊键,所以给出Table 1作为参考,给出了许多键在典型的Macintosh键盘上的标记符号.若你的键盘不太一 ...

  8. 4.5《想成为黑客,不知道这些命令行可不行》(Learn Enough Command Line to Be Dangerous)—第四章小结

    本章相关重要命令总结在Table 6. 命令 描述 示例 mkdir <name> 创建某目录 $ mkdir foo pwd 显示当前所在目录 $ pwd cd <dir> ...

  9. 4.1《想成为黑客,不知道这些命令行可不行》(Learn Enough Command Line to Be Dangerous)—目录结构

    Unix风格的目录结构通常使用一个目录名列表并用正斜杠分隔来表示,这样我们可以结合ls命令: $ ls /Users/mhartl/ruby 或者 $ ls /usr/local/bin 正如图20, ...

随机推荐

  1. js返回一组日期中最近连续的天数

    用js获取一组日期(并把当天算入)中连续的天数 刚开始可能想到单纯的比较日期大小判断连续, 而又有大小月,平闰年这些因素,还是时间戳来的安全; 首先得有一组日期,比如: var arr = [ '20 ...

  2. hidden field implements session

    隐藏域实现会话管理概述 如果你正在制作一个网络问卷,由于问卷内容很长,因此必须分几个页面,上一页面作答完后,必须请求服务器显示下一个页面. 但是在HTTP协议中,服务器并不会记得上一次请求的状态.既然 ...

  3. java 方法重写和属性重写

    重写,子类对父类方法不满意,重写,但这是重写,要与父类的方法一模一样.方法名相同:参数列表相同:返回值相同或子类的返回值是父类返回值的子类型,父类是long,子类是int也不可以,因为父类引用指向子类 ...

  4. linux的作业控制(job control)

    引用:http://blog.chinaunix.net/u2/68904/showart_1803789.html 把作业放到后台运行:‘ & ’ 举个简单的例子, 我们要将 /etc/ 整 ...

  5. 查找并修复Android中的内存泄露—OutOfMemoryError

    [编者按]本文作者为来自南非约翰内斯堡的女程序员 Rebecca Franks,Rebecca 热衷于安卓开发,拥有4年安卓应用开发经验.有点完美主义者,喜爱美食. 本文系国内ITOM管理平台 One ...

  6. Android组件系列----当前Activity跳转到另一个Activity的详细过程

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/3 ...

  7. 能力成熟度模型(CMM)

    能力等级 特点 关键过程 第一级 基本级 软件过程是混乱无序的,对过程几乎没有定义,成功依靠的是个人的才能和经验,管理方式属于反应式   第二级 重复级 建立了基本的项目管理来跟踪进度.费用和功能特征 ...

  8. mysqlbinlog usage

    [root@localhost mysql3306]# mysqlbinlogmysqlbinlog Ver 3.4 for el7 at x86_64Copyright (c) 2000, 2018 ...

  9. 点击单个cell高度变化的动画效果

    点击单个cell高度变化的动画效果 效果 说明 1. 点击单个cell的时候,其展开与缩放动画实现起来是很麻烦的,做过相关需求的朋友一定知道其中的坑 2. 本例子只是提供了一个解决方案,为了简化操作, ...

  10. 铁乐学Python_day11_闭包函数

    一.[函数名] 1)函数名本质上它也是一种变量,特殊的变量: (碰到同名其它变量,依照从上往下的代码执行赋值.) 单独打印函数名,输出的是它对应的内存地址: 例: def funcl(): print ...