Unix风格的目录结构通常使用一个目录名列表并用正斜杠分隔来表示,这样我们可以结合ls命令: $ ls /Users/mhartl/ruby 或者 $ ls /usr/local/bin 正如图20,这些表示对应的目录在一个分层的文件系统,图上意思即使mhartl是Users的子目录,而ruby是mhartl的子目录. 图20:文件夹或目录间的对应 当谈起这些目录时根据规范会有不同: 像/Users/mhartl的用户目录可以读作'斜杠 users斜杠mhartl'或者'斜杠users mhar…
我们已经学习过许多处理文件的Unix工具,现在是时候来学习目录了,也就是文件夹(图20).正如我们所见,许多在文件中的开发思想也适用于目录,但同样也有许多区别.…
在4.2章中我们已经会用cd进入到指定的目录中.这是导航最常见的用途之一,但是它还有几个值得关注的用途.第一个是使用cd ..(读作'see-dee 点点')返回当前目录级别的上一级: $ pwd /Users/mhartl/text_files $ cd .. $ pwd /Users/mhartl 在这种情况下,由于/Users/mhartl是我的home目录,可以直接使用cd直接回到home目录: $ cd text_files/ $ pwd /Users/mhartl/text_file…
已经学习了基本的命令,现在是时候学习操作文件了,这也是命令行的重要任务.还是基于本教程的事先规定,本教程是入门级的,不要求熟悉类似编辑文本的程序(这些文本编辑程序,将在下个系列教程中介绍, Learn Enough Text Editor to Be Dangerous.).这也意味着我们将用命令行手动创建文件.但这是个功能,不是个bug(见Box6),因为学习用命令行创建文件本身也是项有用的技能. 备注:本章中重要的命令总结在Table3. Box 6 学习如何说话像个"极客" 学习…
终端是个允许我们运行命令行的程序,运行命令前,先打开它.在MacOS系统上,可以使用macOS应用 Spotlight来打开终端窗口,Spotlight也有其他两种方式触发,一种是键入⌘␣(command和空格键),另一种是点击屏幕右上方的放大镜.一旦你触发了Spotlight,你就可以通过在Spotlight搜索条输入'terminal'开启终端程序.(如果你想使用更高级更个性化的终端程序,我建议安装iTerm, 大家可自愿安装)在Linux系统上,你可以点击终端图标(terminal ico…
我们运行的命令行程序,通常在技术上称作shell, 它包含了一个非常强大(也很神秘)的工具,我们将用它来学习更多可用的命令.这个工具本身就是个称作'man'的命令('manual'的简写).它的参数是一个命令的名字(如echo).具体细节要依赖于系统,我的系统上运行man echo的结果如下Listing 2所示 备注:关于命令行的许多教程都涵盖了文本编辑器和shell元素,而本教程并不计划介绍[前面已经提过],但我们会把这些重要的主题推迟到这一个教程的后续教程[第5章节],毕竟从学习文本编辑器…
首先,为了不手动创建一个长文件(这太麻烦了),我们将使用强大的curl(有时也写作"cURL")工具从网上下载一个文件,这个命令可以让命令行与URL交互.尽管这不是Unix核心命令设置,但是curl命令在Unix系统上被广泛应用.为了确保它在你的系统上能使用,我们可以使用which命令,用它来确认在命令行中程序是否支持该命令.使用方法是在which后面接程序的名字--在这种情况下,就是: $ which curl /usr/bin/curl 我的系统上已经输出了内容(/usr/bin/…
最常用的文件操作除了将文件列出来外,就应该是重命名,复制,删除了.正如将文件列出来一样,大多数现代操作系统为这些任务提供了用户图形界面,但是在许多场景中,用命令行还是会更方便. 使用mv命令重命名一个文件,是'move'的简写: $ echo "test text" > test $ mv test test_file.txt $ ls test_file.txt 这样test文件重新更名为test_file.txt文件.该示例的最后一步用ls来确认文件是否更名成功,但是特定系统…
现在开始准备运行我们的第一条命令了,在屏幕上打印'hello'.(字符打印的地方被称为'标准输出',通常指的是屏幕,很少指真的物理打印机设备).这条命令就是echo,这条命令的参数是想要输出的字符串或简单的字符串简写.运行echo命令,在提示(prompt)后键入'echo hello',然后按回车键(也叫Enter): $ echo hello hello $ (我建议始终自己手动输入命令,因为这可以让你比复制粘贴学到更多) 这里我们发现echo hello输出'hello',接着返回另一个提…
在编辑模式中,命令行包括几个重复之前命令的功能.这些以及其他很多命令功能时常设计键盘上的特殊键,所以给出Table 1作为参考,给出了许多键在典型的Macintosh键盘上的标记符号.若你的键盘不太一样,是时候运用你对针对技术多样的精湛性解决这个问题(1.3章节的Box5) Key Symbol Command ⌘ Control ⌃ Shift ⇧ Option ⌥ Up, down, left, right ↑ ↓ ← → Enter/Return ↵ Tab ⇥ Delete ⌫ *Tab…
本章相关重要命令总结在Table 6. 命令 描述 示例 mkdir <name> 创建某目录 $ mkdir foo pwd 显示当前所在目录 $ pwd cd <dir> 进入到命令 $ cd foo/ cd ~/<dir> 进入到相对于home路径的路径 $ cd ~/foo/ cd 改变当前目录为home为路径 $ wc foo cd - 回到之前的路径 $ cd && pwd && cd - . 当前路径 $ cp ~/foo.…
本章使用的重要命令总结在Table 5中 命令 描述 示例 curl 与URL交互 $ curl -O example.com which 指出程序的在计算机的路径 $ echo bar >> foo.txt head <file> 显示文件的前部分 $ head foo tail <file> 显示文件的后部分 $ tail bar wc <file> 计算文件的行数,单词数以及字节数 $ wc foo | |cmd1 Table5: 第三章重要命令总结…
grep是检查文件内容最强大的工具之一,这也许不能代表什么,但这不是重点.的确,grep常用作动词,比如'你完全应该检索(grep)那个文件'. grep最常用于在文件中搜索子字符串.例如,我们在第三章节中学到的在莎士比亚诗中搜索'rose'字符串.而使用grep,我们可以直接找到标记,如Listing 16中展示的那样: Listing 16: 寻找出现在莎士比亚诗中的'rose' $ grep rose sonnets.txt The rose looks fair, but fairer…
Unix提供了两个工具查看不止文件的头部和尾部.这个功能程序叫做more,但有种更强大的变异体叫做less(起初我认为这是玩笑).less这个程序是交互性地,所以很难在输出时捕获,但是仍然为大家提供了粗略地样本如下: $ less sonnets.txt Shake-speare's Sonnets I From fairest creatures we desire increase, That thereby beauty's Rose might never die, But as the…
检查文件两个互补的命令是head 和tail, 它们分别用于查看文件的开始(头部)和结束(尾部).head命令展示了文件的前10行.(Listing 11). ##Listing 11: 查看示例文件的开始 $ head sonnets.txt Shake-speare's Sonnets I From fairest creatures we desire increase, That thereby beauty's Rose might never die, But as the ripe…
上面我们已经学过如何创建及操作文件,现在我们再来学习检查内容.当文件太长以至于屏幕一页显示不完时,这显得尤其重要.特殊情形下,如我们在第2.1章节开始部分中使用cat命令将内容展示到屏幕上,但这对于长文件来说不太适用. 注意:本章重要的命令将在Table 5中列出. todo: table 5链接========================…
回忆第一章节的内容,我们用echo命令输出莎士比亚的第一首十四行诗的第一行(Listing 6): $ echo "From fairest creatures we desire increase," From fairest creatures we desire increase, 我们现在的任务是创建一个包含此内容的文件.即使没有文本编辑器便捷,但还是可以使用重定向操作符 >: $ echo "From fairest creatures we desire i…
也许最常用的Unix命令是ls了,它是'list'的简写(Listing 8) Listing 8 用ls以列表的形式显示文件和目录(内容输出跟各自电脑有关) $ ls Desktop Downloads sonnet_1.txt sonnet_1_reversed.txt ls命令简单地列出了当前路径下的所有文件和目录(但不包括被隐藏的文件,我们过一会儿就会提到它).从另一个意义上讲,它实际上是图形浏览器的命令行版本,用于显示文件和目录,如插图15.(我们将在第四章中加深对目录和文件的理解)正…
下Table 3本章重要命令小结 命令 描述 示例 > 将输出内容重定向到指定文件中 $ echo foo > foo.txt >> 将输出内容添加到指定问价中 $ echo bar >> foo.txt cat <file> 在屏幕上输出文件内容 $ cat hello.txt diff <f1> <f2> 比较文件1和2的差异 $ diff foo.txt bar.txt ls 列出文件或目录 $ ls hello.txt ls…
本章节学过的重要命令整理,见下表Table 2. 命令 描述 例子 echo <string> 向屏幕输出字符串 $ echo hello man <command> 显示命令手册页 $ man echo ⌃C 跳出窘境 $ tail^C ⌃A 移至该命令行开始 ⌃E 移至该命令行末尾 ⌃U 删除一行命令 重新输入 $ tail^C Option-click 将光标移至点击位置 Up & down arrow 滚动查看前面的命令 clear 或者 ^L 清除屏幕 $ cle…
使用命令行时,使用clear命令清除屏幕非常方便: $ clear 键盘简写为^L.(Ctrl + L) 同样地,使用完终端当前窗口或标签页,使用exit命令退出进程: $ exit 键盘简写为^D 练习 清除当前标签页所有内容 打开新的标签,执行echo 'hello',然后退出…
基础 正如著名作者Neal Stephenson所说的那样,'(开发, 译者加)开始是命令行',尽管通过用户图形界面使用计算机及其简单,但是在许多场景中,最有效.最灵活地与计算机交互的方式是使用命令行界面.在命令行界面中,计算机使用者敲出命令指示计算机执行所需任务.这些命令可以有很多种结合方式来实现多样的输出.例如一个典型的命令,如下图2 图2:命令行命令原型 本教程覆盖了基础的Unix命令,其中Unix指的是一系列包括Linux,Android, iOS(iPhone/iPad) 和macOS…
对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能,对于我们用好linux系统只管重要,下面我们就开始了解一下linux目录结构的相关知识. 当在使用Linux的时候,如果您通过ls –l / 就会发现,在/下包涵很多的目录,比如etc.usr.var.bin ... ... 等目录,而在这些目录中,我们进去看看,发现也有很多的目录或文件.文件系统在Linux下看上去就象树形结构,所以我们…
对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能,对于我们用好linux系统只管重要,下面我们就开始了解一下linux目录结构的相关知识. 当 在使用Linux的时候,如果您通过ls –l / 就会发现,在/下包涵很多的目录,比如etc.usr.var.bin ... ... 等目录,而 在这些目录中,我们进去看看,发现也有很多的目录或文件.文件系统在Linux下看上去就象树形结构,所以…
对于每一个Linux 学习者来说,了解 Linux 文件系统的目录结构,是学好Linux 的至关重要的一步,深入了解Linux 文件目录结构的标准和每个目录的详细功能,对于我们用好Linux 系统至关重要,下面我们就开始了解一下 Linux 目录结构的相关知识. 当在使用Linux 的时候,如果您通过 ls   -l   / 就会发现,在 /  下包涵很多的目录,比如 etc  usr  var   bin  等目录,而在这些目录中,我们进去看看,发现也有很多的目录或文件.文件系统在 Linux…
一. 简介 对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能,对于我们用好linux系统只管重要,下面我们就开始了解一下linux目录结构的相关知识. 当在使用Linux的时候,如果你通过ls –l / 就会发现,在/下包涵很多的目录,比如etc.usr.var.bin ... ... 等目录,而在这些目录中,我们进去看看,发现也有很多的目录或文件.文件系统在Linux下看上去就象树形结…
对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能,对于我们用好linux系统至关只要,下面我们就开始了解一下linux目录结构的相关知识. 当在使用Linux的时候,如果您通过ls –l / 就会发现,在/下包涵很多的目录,比如etc.usr.var.bin ... ... 等目录,而在这些目录中,我们进去看看,发现也有很多的目录或文件.文件系统在Linux下看上去就象树形结构,所以我们…
对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能,对于我们用好linux系统只管重要,下面我们就开始了解一下linux目录结构的相关知识. 当在使用Linux的时候,如果您通过ls –l / 就会发现,在/下包涵很多的目录,比如etc.usr.var.bin ... ... 等目录,而在这些目录中,我们进去看看,发现也有很多的目录或文件.文件系统在Linux下看上去就象树形结构,所以我们…
原文网址:http://www.cnblogs.com/peida/archive/2012/11/21/2780075.html 对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能,对于我们用好linux系统只管重要,下面我们就开始了解一下linux目录结构的相关知识. 当在使用Linux的时候,如果您通过ls –l / 就会发现,在/下包涵很多的目录,比如etc.usr.var.bin…
对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能,对于我们用好linux系统至关重要,下面我们就开始了解一下linux目录结构的相关知识. 当在使用Linux的时候,如果您通过ls –l / 就会发现,在/下包涵很多的目录,比如etc.usr.var.bin ... ... 等目录,而在这些目录中,我们进去看看,发现也有很多的目录或文件.文件系统在Linux下看上去就象树形结构,所以我们…