《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. Android:StatFs类 获取系统/sdcard存储空间信息

    在存储文件时,为了保证有充足的存储空间大小,通常需要知道系统内部或者sdcard的剩余存储空间大小,这里就需要用到StatFs类. 1. 判断 SDCard 是否存在,并且是否具有可读写权限 /** ...

  2. 网络编程之socket新解

    由于工作并不是很忙,闲暇之余就读了下tomcat的源代码.我是从事java服务器开发工作的,大体的一些服务器线程模型我都是了解的.其大部分都是由一个线程调用监听端口等待客户端的链接,建立连接后再交由其 ...

  3. Unsafe的应用

    要想把java并发包学好,并明白其底层的设计原理,Unsafe类你不能不去研究一下.下面介绍一下Unsafe类的功能以及它在JDK中的应用. 一.分配内存和释放内存 功能:类中提供的3个本地方法all ...

  4. StreamHelper

    public static MemoryStream CreateMemoryStreamFromBytes(byte[] inputData) { if (inputData == null || ...

  5. PyQt写的五子棋

    技术路线 GUI的实现 使用PyQt技术作为基础.PyQt是一个支持多平台的客户端开发SDK,使用它实现的客户端可以运行在目前几乎所有主流平台之上. 使用PyQt,Qt设计器实现UI,通过pyuic4 ...

  6. block,inline,inline-block的区别

    block: 英语翻译过来是“块”意思,就跟小时候玩过的积木方块一样,一块一块往上搭. inline: 英语翻译过来就是“内联”的意思,内联不好理解,我的理解就是行内元素: block和inline都 ...

  7. .Net Framework源码

    http://referencesource.microsoft.com/

  8. [小工具]CSS内嵌样式自动提取器

    逐行分析,将内联样式提取出来,并自动编号代替的一个小工具软件 注:style=""(此处必须是标准的双引号!) http://files.cnblogs.com/quejuwen/ ...

  9. jquery层级原则器(匹配父元素下的子元素)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  10. ios源码-ios游戏源码-ios源码下载

    游戏源码   一款休闲类的音乐小游戏源码 该源码实现了一款休闲类的音乐小游戏源码,该游戏的源码很简单,而且游戏的玩法也很容易学会,只要我们点击视图中的grid,就可以 人气:2943运行环境:/Xco ...