《The Linux Command Line》 读书笔记01 基本命令介绍

1. What is the Shell?

  The Shell is a program that takes keyboard commands and passes them to the operating system to carry out.

提示符

  $被称作shell prompt,它表明shell准备好接收输入。

  通常是包含了你的用户名和机器名(username@machinename),之后是当前的工作目录,之后是一个dollar符号。

  如果最后一个符号不是$符号而是井号(#)(hash mark),当前终端会话具有superuser权限。

  这表明要么我们是以root用户登录的,要么我们选择了一个terminal emulator提供了超级用户,也即管理员的权限。

一些简单的命令

  date显示当前的时间还有日期

  cal展示当前月份的日历

  df查看当前硬盘的空间

  free查看空闲存储空间

  exit结束会话

复制和粘贴

  命令行中Ctrl+C,V的复制粘贴方法不再管用,在Linux命令行中的复制粘贴是这样的:

  鼠标双击一个文件名,表示复制;

  单击鼠标中键,表示粘贴。

2. Navigation

  在文件系统中导航,主要要用这三个命令:

  pwd—Print name of current working directory. 打印当前工作目录。

  cd—Change directory.

  ls—List directory contents.

  文件系统是树形的,但是不像Windows里面,每个存储设备有一个单独的树;Unix-like system永远只有一个文件系统树形结构。

改变当前目录

  改变当前目录的命令是cd(change directory),后面跟目标路径。

  目标路径有两种给出的方式,一种是绝对路径,一种是相对路径

  绝对路径名

  绝对路径是从root目录开始的,root目录通常用一个开头的斜线(/)表示

  比如cd /usr/bin可以进入程序安装目录。

  相对路径名

  相对路径的起点是工作目录,需要使用特殊的符号来表示相对位置:

  .一个点表示当前目录;

  ..两个点表示父目录。

  比如当前在usr下,想进入bin下:

  cd ./bin

  在大多数时候,可以省略./

  cd bin

关于文件名

  1.以句号(.)开头的文件是隐藏文件。

  这仅仅是意味着ls不能列出它们,ls –a才能列出它们

  当账户建立的时候,home目录下会出现一些这样的文件,配置一些东西,一些应用也会把它们的配置文件放在这里。

  2.文件名和命令都是大小写敏感的。

  3.Linux没有后缀名(file extension)的概念。

  但是尽管Unix类的系统不使用文件后缀来决定文件内容和用途,一些应用程序还是需要文件名后缀。

  4.尽管Linux支持很长的文件名,可以包含空格和标点,但是你最好将文件名中使用的标点限制在句号、连字符和下划线这三种类型内。

  最重要的是,在文件名中不要使用空格。不然一些命令行的任务会变得很难进行。

3. Exploring the System

ls命令

  ls可以列出当前工作目录下的文件和子目录名。

  除了当前目录,也可以指定路径:

  ls /usr

  并且可以指定多个路径:

  ls ~ /usr

  这样可以分别列出用户的home目录和usr目录下的内容。

  (home目录用字母~表示)

  也可以指定输出方式:ls –l以长格式输出。

 命令选项和参数

  命令通常跟着一个或多个选项(options),指定行为方式

  另外会跟着一个或多个参数(arguments),指定行为对象

  command –options arguments

  选项通常是一个字母,前缀一个连字符,比如-l。

  很多命令也支持长选项,由两个连字符后接一个单词组成。

  还有很多命令支持多条短选项串接,比如ls –lt。

  l选项指定输出格式为长,t选项将结果按照文件的修改时间排序。

  如果是ls –lt –reverse

  将会逆序排列结果。

  一些常用的ls选项:

file命令查看文件类型

  前面提到过,Linux中,所有东西都是一个file,文件是不用后缀名的,即从文件名上并不能看出文件的类型。

  所以可以用命令file filename来查看文件类型,执行后会输出文件描述。

  file filename

less命令查看文件内容

  less命令可以查看文本文件(比如配置文件、脚本)的内容。

  less filename

  执行后可以滚动查看文件内容,可以按Q键退出less。

  less常用命令:

  less取代了早期Unix的一个叫做more的程序。名字是根据设计中常用的less is more的短语。

4. Manipulating Files and Directories

  cp—Copy files and directories. 复制文件或目录。

  mv—Move/rename files and directories. 移动和重命名文件和目录。

  mkdir—Create directories. 创建目录,可以创建多个。

  rm—Remove files and directories. 删除文件和目录。

  ln—Create hard and symbolic links.

通配符wildcards or globbing

  注意,字母的范围,比如[A-Z]或者[a-z]可能不太好用。

rm命令使用时要注意

  由于删除操作是不可逆的,所以使用rm命令的时候要格外注意,尤其是和通配符结合的时候,rm *.html多加一个空格就有可能会删掉所有文件。

  所以比较好的方法:首先,仔细检查通配符的使用;其次,先用ls命令看一眼要删除的文件,然后向上返回命令,将ls改成rm。

参考资料

  《The Linux Command Line》http://linuxcommand.org/tlcl.php

《The Linux Command Line》 读书笔记01 基本命令介绍的更多相关文章

  1. 《The Linux Command Line》 读书笔记02 关于命令的命令

    <The Linux Command Line> 读书笔记02 关于命令的命令 命令的四种类型 type type—Indicate how a command name is inter ...

  2. 《The Linux Command Line》 读书笔记04 Linux用户以及权限相关命令

    Linux用户以及权限相关命令 查看身份 id:Display user identity. 这个命令的输出会显示uid,gid和用户所属的组. uid即user ID,这是账户创建时被赋予的. gi ...

  3. [笔记]The Linux command line

    Notes on The Linux Command Line (by W. E. Shotts Jr.) edited by Gopher 感觉博客园是不是搞了什么CSS在里头--在博客园显示效果挺 ...

  4. Linux Command Line Basics

    Most of this note comes from the Beginning the Linux Command Line, Second Edition by Sander van Vugt ...

  5. Linux Command Line 解析

    Linux Command Line 解析 0 处理模型 Linux kernel的启动包括很多组件的初始化和相关配置,这些配置参数一般是通过command line进行配置的.在进行后续分析之前,先 ...

  6. 15 Examples To Master Linux Command Line History

    When you are using Linux command line frequently, using the history effectively can be a major produ ...

  7. 10 Interesting Linux Command Line Tricks and Tips Worth Knowing

    I passionately enjoy working with commands as they offer more control over a Linux system than GUIs( ...

  8. Reso | The Linux Command Line 的中文版

    http://book.haoduoshipin.com/tlcl/book/zh/ 本书是 The Linux Command Line 的中文版, 为大家提供了多种不同的阅读方式. 中英文双语版- ...

  9. Linux Command Line(II): Intermediate

    Prerequisite: Linux Command Line(I): Beginner ================================ File I/O $ cat > a ...

随机推荐

  1. 番外特别篇之 为什么我不建议你直接使用UIImage传值?--从一个诡异的相册九图连读崩溃bug谈起

    关于"番外特别篇" 所谓"番外特别篇",就是系列文章更新期间内,随机插入的一篇文章.目前我正在更新的系列文章是 实现iOS图片等资源文件的热更新化.但是,这两天 ...

  2. 六、GAIA

    1.      GAIA CSR GAIA (Generic Application Interface Architecture)提供了一个端到端的,与主机无关的生态系统来实现主机应用程序对设备的功 ...

  3. 30天C#基础巩固----Lambda表达式

         这几天有点不在状态,每一次自己很想认真的学习,写点东西的时候都会被各种小事情耽误,执行力太差.所以自己反思了下最近的学习情况,对于基础的知识,可以从书中和视频中学习到,自己还是需要注意下关于 ...

  4. C# 目录(文件夹)复制实现

    private static void CopyDir(DirectoryInfo origin, string target) { if (!target.EndsWith("\\&quo ...

  5. C#串口通信—传输文件测试

    说明:该程序可能不具备实用性,仅测试用. 一.使用虚拟串口工具VSPD虚拟两个串口COM1和COM2 二.约定 占一个字节,代码如下: using System; using System.Colle ...

  6. 使用Tuple来实现多个Model传送至视图

    前面Insus.NET实现过<使用ViewModel来实现多个Model传送至视图>http://www.cnblogs.com/insus/p/5594134.html 和<使用E ...

  7. Type 'Insus.NET.PictureObject' in Assembly 'App_Code, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' is not marked as serializable.

    昨晚想实现一个功能,需要把一个对象存储于ViewState中去,但在运行时,出现下面的异常. Type 'Insus.NET.PictureObject' in Assembly 'App_Code, ...

  8. C语言写的流氓关机程序及破解

    记得大二刚开始接触电脑的那个时候,偶尔会弹出一个强制关机的窗口,当时没有办法,如下: 现在看来只是一个小程序而已,用C语言编写的: #include<windows.h> int main ...

  9. 仿Office的程序载入窗体

    初次接触启动界面记不清是在哪一年了,估计是小学四年级第一次打开Office Word的时候吧,更记不清楚当时的启动界面是长啥样了.后来随着使用的软件越来越多,也见到各式各样的启动界面.下面就列举了两个 ...

  10. 为什么说Babel将推动JavaScript的发展

    Babel是一个转换编译器,它能将ES6转换成可以在浏览器中运行的代码.Babel由来自澳大利亚的开发者Sebastian McKenzie创建.他的目标是使Babel可以处理ES6的所有新语法,并为 ...