`
su1216
  • 浏览: 672086 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
Group-logo
深入入门正则表达式(jav...
浏览量:72021
E60283d7-4822-3dfb-9de4-f2377e30189c
android手机的安全问...
浏览量:128935
社区版块
存档分类
最新评论

《Unix & Linux 大学教程》 - 第九、十章 学习笔记

阅读更多

学习笔记,内容基础,适合初学者。

 

阅读之前,请务必花30秒查看前言说明(在第一、二章前面部分)

《Unix & Linux 大学教程》 - 第一、二章 学习笔记    Unix简介 & 什么是Linux?什么是Unix

《Unix & Linux 大学教程》 - 第三、四章 学习笔记    Unix连接 & 开始使用Unix

《Unix & Linux 大学教程》 - 第五、六章 学习笔记    GUI:图形用户界面 & Unix工作环境

《Unix & Linux 大学教程》 - 第七、八章 学习笔记    Unix键盘使用 & 能够立即使用的程序

《Unix & Linux 大学教程》 - 第九、十章 学习笔记    文档资料:Unix手册与Info & 命令语法

《Unix & Linux 大学教程》 - 第十一、十二章 学习笔记    shell & 使用shell:变量和选项

《Unix & Linux 大学教程》 - 第十三章 学习笔记    使用shell:命令和定制

《Unix & Linux 大学教程》 - 第十四、十五章 学习笔记     使用shell:初始化文件

《Unix & Linux 大学教程》 - 第十八章 学习笔记    过滤器:统计和格式化
《Unix & Linux 大学教程》 - 第十九章(一) 学习笔记    过滤器:选取、排序、组合及变换
《Unix & Linux 大学教程》 - 第十九章(二)、第二十章 学习笔记  过滤器:选取、排序、组合及变换 正则表达式

《Unix & Linux 大学教程》 - 第二十一章 学习笔记  显示文件

《Unix & Linux 大学教程》 - 第二十二章(一) 学习笔记  vi文本编辑器(一)

《Unix & Linux 大学教程》 - 第二十二章(二) 学习笔记  vi文本编辑器 (二)

《Unix & Linux 大学教程》 - 第二十二章(三) 学习笔记  vi文本编辑器 (三)

《Unix & Linux 大学教程》 - 第二十四章 学习笔记  目录操作

《Unix & Linux 大学教程》 - 第二十五章 学习笔记  文件操作

《Unix & Linux 大学教程》 - 第二十六章(一) 学习笔记  进程和作业控制

《Unix & Linux 大学教程》 - 第二十六章(二) 学习笔记  进程和作业控制

《Unix & Linux 大学教程》 - 附录F 时区与24小时制时间

 

 


第九章:Unix手册与Info
基础知识
命令/程序
Unix手册:分为8节,分别为:
1命令、2系统调用、3库函数、4特殊文件、5文件格式、6有戏、7杂项、8系统管理
每一节又分很多小节。比如在一些linux系统上,第三节有一下一些小节:
3c:标准C函数、3f:Fortran函数、3m:数学函数、3s:标准I/O函数、3x:特殊函数。

man (+命令):查看此命令文档。阅读文档时想执行命令,可以使用“!”,比如查看日期,那么可以输入“!date”,然后回车。
       -u, --utc, --universal
              print or set Coordinated Universal Time
       --help display this help and exit
       --version
              output version information and exit
       FORMAT controls the output.  Interpreted sequences are:
       %%     a literal %
!date --utc
执行结果如下
$ man date
2012年 08月 07日 星期二 02:25:20 UTC
!done  (press RETURN)
之后按下return回返回到date的文档中。

Bang字符:即上面提到的叹号。

man中也可以指定节号,比如:
man 2 kill 3f kill
每节和其中小节都包含一个intro的页面,充当简介。
man intro
man 1 intro
man 1c intro

说明书页的引用方式:手册中经常出现命令后面跟着圆括号括起来的数字。比如:
man git 写道
See gittutorial(7) to get started, then see Everyday Git[1] for a useful minimum set of commands, and "man git-commandname" for documentation of each command. CVS
users may also want to read gitcvs-migration(7). See the Git User’s Manual[2] for a more in-depth introduction.
 See gittutorial(7)的意思是参看gittutorial的第七节说明。man 7 gittutorial即可。

说明书页的格式:
标题 含义
Name 命令的名称和用途(摘要)
Synopsis 命令语法(摘要)
Description 完整描述
Environment 命令使用的环境变量
Author 作者
Files 对该命令重要的文件列表
See also 查看相关的信息的位置
Diagnostics 可能的错误和警告
Bugs 错误、缺点、警告
Environment:根据上下文的不同,这些变量还有其他几个不同的名称:环境变量
全局变量或者shell变量。根据约定,环境变量和全局变量的名称完全由大写字母构成。(这里书中说到“这些变量还有其他几个不同的名称”,我觉得正常应该理解为他们是同一种变量,只是叫法不一样了,但是后面又说“环境变量和全局变量的名称”,似乎说他们不是同一种类型的变量,并且只提到了两个名称没有提到第三个,作为初学者的我极其迷惑。。。希望后面章节中能解释清楚)
Diagnostics:包含两种信息:对可能的错误消息进行解释;命令结束时返回的错误代码。

man也可以只查看手册中的NAME,比如:
$ whatis date time
date (1)             - print or set the system date and time
time (7)             - overview of time and timers
time (2)             - get time in seconds
time (1)             - run programs and summarize system resource usage
显示了date和time的NAME内容,括号为所在小节。
此命令等同于
man -f date time

搜索命令:apropos(s不发音)
如果知道自己要做什么,但是不知道命令,那么man也提供搜索功能,可以在MANE中搜索。
man -k(keyword) +关键字:搜索带有关键字的NAME
$ man -k copy
AuSoundCreateDataFromBucket (3nas) - copy the data from a bucket into local memory.
AuSoundCreateFileFromBucket (3nas) - copy the data from a bucket into a file.
bcopy (3)            - copy byte sequence
bf_copy (1)          - shell script to copy a bogofilter working directory
bf_copy-bdb (1)      - shell script to copy a bogofilter working directory
copysign (3)         - copy sign of a number
copysignf (3)        - copy sign of a number
copysignl (3)        - copy sign of a number
copywin (3ncurses)   - overlay and manipulate overlapped curses windows
cp (1)               - copy files and directories
……
等同
apropos copy

xman:man的备选方案。(x暗含该程序基于GUI的X-Window编写),ctrl+s为搜索。(个人觉得很难用。。。)
whatis:等同于man -f
命令后的&:例如xman&,告诉shell将程序启动为后台运行。

大多数命令就是程序,但是也有一些最基本的命令由shell本身来执行,这些命令称为内置命令这些命令记录在shell的说明说中,手册中没有单独条目


3个分屏显示程序:
less、more(搜索默认不是正则模式)、pg
下面是他们通用的命令
通用命令
q 退出
h 显示帮助信息
阅读说明书页
space 显示下一屏
pagedown 显示下一屏
f(forward) 显示下一屏
pageup 显示上一屏
b(backward) 显示上一屏
搜索
/pattern 向下搜索特定的模式
?pattern 向上搜索特定的模式
/ 向下搜索上一个模式
n(next) 向下搜索上一个模式
? 向上搜索上一个模式
N(next) 向上搜索上一个模式
在说明书页中移动
return 向下移一行
down 向下移一行
up 向上移一行
g(go to top) 移到页的顶部

G(go to bottom)

移到页的底部


Info系统:独立于Unix手册,用来记录GNU实用工具,许多Linux说明书页指向Info。Info文件需要用Info程序打开。
Info不仅包含信息,还包含连接到其他文件的链接。
查看Info有很多命令可以用,比联机手册多的多。
Info是Textinfo的一部分,有时也称Info为Textinfo

书中介绍了一些树的知识,由于我是数学专业的,所以这部分就略过了
有兴趣的同学最好看看图论,而不是拿本离散数学。

Info的数据结构为树。需要掌握:
1.使用info启动Info
2.为了阅读整个文件,从一个节点跳到下一个节点
3.使用链接从一个文件跳到另一个文件
链接的格式:“*”开始,然后是主题名,后面跟着冒号“:”,然后是简短描述

info (+命令):查看此命令的信息。不加参数,则显示目录节点(Directory Node)
通用命令
q 退出
h 启动帮助向导
? 显示命令摘要列表
阅读节点
PageDown 显示下一屏
Space 显示下一屏
Space (在节点底部)跳转到下一个节点
PageUp 显示上一屏
Backspace 显示上一屏
Delete 显示上一屏
Backspace (在节点顶部)跳转到上一个节点
Delete (在节点顶部)跳转到上一个节点
在节点中移动
b 跳转到当前节点的开头
Up 将光标向上移动一行
Down 将光标向下移动一行
Right 将光标向右移动一个位置
Left 将光标向左移动一个位置
在同一个文件中从一个节点跳转到另一个节点
n 跳到同一个文件中的下一个节点
p 跳到同一个文件中的上一个节点
t 跳到顶节点(Top Node,文件中的第一个节点)
从一个文件跳到另一个文件
Tab 将光标移动到下一个链接上
M-Tab 将光标移动到上一个链接上
Retun 到达链接指向的新节点或者文件
l(字母L) 跳转到上一个(刚才浏览的)节点
d 跳转到目录节点(主菜单)
M-x表示法:M-代表Meta键,Meta键是Emacs中重要概念,通过如下两种方式使用
1.<ALT-X>(同时按下)
2.<ESC> <X>(分别按下)


名次解释
RTFM(Read the fucking manual):动词,表示需要信息或解决问题时,在请求他人帮助之前,应该花一些时间尝试自己去寻找所需要的东西。委婉的解释:Read the fine manual。
foo、bar、foobar:表示讨论或讲解中没有命名的项。
foobar:取自FUBAR(fouled/fuck up beyond all recognition,搞的一团糟而无法识别)。


第十章:命令语法
基础知识:
一次输入多条命令:用分号隔开,结尾分号可省略

命令语法(command syntax):Unix命令语法可以表示为:键入命令的名称,后面是选项(option)(也称开关Switches或标志Flags),再后面是参数(arguments)
$  ls -l -F email\ Notes.txt 
-rw-r--r-- 1 su1216 su1216 6432 2012-03-29 13:18 email Notes.txt
$ ls -lF email\ Notes.txt 
-rw-r--r-- 1 su1216 su1216 6432 2012-03-29 13:18 email Notes.txt
上面的例子中,l和F是ls的两个选项,选项区分大小写。他们可以分别写,也可以放到一起。(“-”读作dash)

短选项“-”和长选项“--”
短选项输入方便,长选项方便记忆,例如:ls -r与ls -reverse等价
两个长选项需要记住:--help和--version
如果写成-help,则解析为-h -e -l -p

空白符(whitespace)
在命令行中,空白符是指一个或多个连续的空格或者(对于一些shell来说)制表符。其他情形中, 空白符是指一个或多个连续的空格、制表符或者新行字符。
命令的每个部分之间必须至少有一个空格或者制表符,Unix命令的名称中没有空格。

命令的形式描述:语法
Unix中,命令语法遵循7条规则,其中前5条是最基本的规则。
1.方括号中的项是可选的
2.不在方括号中的项是必选项
3.黑体字必须按原样准确键入
4.斜体字必须用适当的值代替(不显示斜体字的系统上通常用下划线代替)
5.后面接省略号(…)的参数可以重复任意次
6.如果一个单独的选项和一个参数组合在一起,那么该选项和参数必须同时使用
7.右|(竖线)字符分开的两个或多个项,表示可以从这个列表中选择一个项

passwd (+用户标识):修改此用户标识的口令



前十章到此结束,希望作者不要再大量传授历史知识了,不然这真就变成了一本历史书了!


 

转贴请保留以下链接

本人blog地址

http://su1216.iteye.com/

http://blog.csdn.net/su1216/

分享到:
评论

相关推荐

    Unix-Linux编程实践教程

    《Unix-Linux编程实践教程》是一本专注于系统开发编程的书籍,主要涵盖了Unix和Linux操作系统下的编程技术。作为程序员或系统管理员,理解Unix和Linux的底层机制是至关重要的,因为这两种操作系统广泛应用于服务器端...

    linux与unix_shel编程经典教程(第二版).pdf

    通过对《Linux与Unix Shell编程经典教程》的读书笔记进行总结,我们不仅了解了SHELL在Linux和Unix系统中的重要地位,还掌握了文件的安全与权限管理方面的基础知识。这对于学习Linux/Unix操作系统、进行系统管理和...

    linux入门学习笔记

    ### Linux 入门学习笔记 #### 一、Linux 安装与配置 ##### 1. Linux 的安装方式 - **虚拟机安装**:通过虚拟化技术,在现有操作系统上模拟一个完整的计算机环境,安装 Linux。 - **安装虚拟机软件**: - **...

    linux学习笔记.docx

    Linux是一种免费使用和自由传播的类UNIX计算机操作系统的内核,其源代码可以免费获得。它诞生于1991年,由芬兰赫尔辛基大学的学生Linus Torvalds首次发布,并逐渐发展成为当今最流行的操作系统之一。Linux不仅广泛...

    UNIX和Linux操作系统(第一章).ppt

    这门课程【UNIX和Linux操作系统(第一章)】着重于介绍这两个操作系统的基础知识和操作方法,旨在培养学生的实践能力和对操作系统深入理解。课程内容分为两个部分:第一部分是【LINUX基础与应用】,涵盖7个章节,主要...

    鸟哥的私房菜Linux学习笔记

    ### 鸟哥的私房菜Linux学习笔记关键知识点解析 #### 第一章 计算机概论 **1. CPU的种类** - **精简指令集(RISC)** - 特点:指令数量少,每条指令执行周期简单且快速。 - 例子:ARM架构。 - **复杂指令集...

    Linux学习笔记.pdf,linux详解,LINUX

    本资料“Linux学习笔记.pdf”将带你深入理解Linux的基础知识和高级应用。 一、Linux系统概述 1. Linux的起源:Linux的诞生源于托瓦兹对Minix系统的不满,他决定创建一个符合个人需求的、免费的Unix-like操作系统...

    linux学习笔记 .doc

    Linux学习笔记概述 Linux是一种自由和开放源代码的操作系统,其设计目标是提供一个轻量级、高效且安全的计算平台。Linux系统采用类UNIX目录结构,每个目录都有特定的功能和用途。以下是对Linux主要目录及其内容的...

    2009 达内Unix学习笔记

    集合了 所有的 Unix命令大全 登陆服务器时输入 公帐号 openlab-open123 telnet 192.168.0.23 自己帐号 sd08077-you0 ftp工具 192.168.0.202 tools-toolss 老师测评网址 http://172.16.0.198:8080/poll/ 各个 ...

    linux系统学习笔记

    ### Linux系统学习笔记 #### 一、Linux系统Shell介绍 1. **Linux系统Shell类型**:Linux系统提供了多种Shell供用户选择,常见的包括Bourne shell (`sh`), C shell (`csh`), Korn shell (`ksh`)等。其中,`sh`是Unix...

    unix shell编程第三版笔记

    通过深入学习"Unix Shell编程第三版笔记",你将能够编写出高效的自动化脚本,提高工作效率,解决日常的系统管理和开发问题。同时,对Unix Shell的熟练掌握也是成为高级系统管理员或全栈开发者的必备技能之一。

    Linux学习笔记(CentOS).docx

    Linux学习笔记(CentOS) Linux 是一个遵循 POSIX 标准的免费操作系统,具有 BSD 和 SYSV 的扩展特性。 Linux 的开放性和灵活性使它得以在实验室和其他研究机构中被用于创新性技术变革的前沿。学习 Linux 需要掌握...

    linux学习笔记.pdf

    Linux是一种开源的类Unix操作系统内核,自1991年由芬兰学生林纳斯·托瓦兹发明以来,由于其强大的网络功能和稳定高效的性能,已被广泛应用于服务器、嵌入式系统和个人电脑上。Linux操作系统是由众多社区和企业支持,...

    linux与unix经典编程

    根据提供的信息,《LINUX与UNIX SHELL编程指南》是一本深入介绍Linux与Unix操作系统中Shell编程的经典书籍。本文将从该书的读书笔记中提取关键知识点,并进行详细阐述。 ### 文件安全与权限 #### 文件的基本访问...

    linux学习入门笔记

    Linux学习入门笔记主要涵盖了一系列与Linux操作系统相关的基础知识,适合初学者进行系统性的学习。Linux是一种开源、免费的操作系统,它的核心在于Unix哲学,强调简洁、模块化的设计。本笔记将帮助你逐步理解并掌握...

    linux下AWK学习笔记

    AWK是一种强大的文本分析工具,尤其在Linux和Unix环境下被广泛使用。它能够对文本文件中的数据行进行处理,提取、分析或者转换数据,非常适合数据分析和报告生成。本笔记将详细介绍AWK的基本概念、语法、命令选项...

    LINUX与UNIX%20SHELL编程指南

    《LINUX与UNIX SHELL编程指南》是一本深入讲解Linux和UNIX Shell编程的经典书籍,作者张启峰在读书笔记中不仅归纳总结了书中的核心概念,还提供了丰富的实践示例,旨在帮助读者全面掌握Shell编程技能。以下是根据...

    《C++ Primer Plus第6版中文版》学习笔记(第九章)

    C++ Primer Plus第6版第九章讨论了如何管理和编译多个源文件和头文件,下面是对这一主题的详细解释。 首先,C++提供了多种存储类型来控制数据在内存中的生命周期和访问权限。存储持续性决定了变量或对象的生命周期...

    APUE读书笔记(Unix高级环境编程)

    #### 第九章 进程关系 - **进程组**:一组具有相同组ID的进程。 - **会话**:由一个或多个进程组组成,通常与终端相关联。 - **控制终端**:进程与终端建立联系的方式。 - **作业控制**:使用控制字符进行作业控制...

    php基础学习笔记

    ### PHP基础学习笔记 #### 第一章:PHP + MySQL 基础入门 ##### Web 开发简介 在这一章节中,我们首先介绍了Web开发的基本概念及其工作原理。Web开发涉及创建和维护网站的过程,它包括前端开发(负责网站外观、...

Global site tag (gtag.js) - Google Analytics