`
su1216
  • 浏览: 672059 次
  • 性别: 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小时制时间

 

 

第二十一章:显示文件

 

部分显示文件的工具

程序 作用 章号
less 分页程序:每次一屏的显示数据 21
more 分页程序(已经废弃,在BSD中使用) 21
pg 分页程序(已经废弃,在System V中使用) --
cat 显示整个文件,没有分页 16
head 显示文件的第一步分 16、21
tail 显示文件最后一部分 16、21
grep 显示包含/不包含特定模式的行 19、20
vi 文本编辑器:显示和编辑文件 21
view、vi-R 只读文本编辑器:显示但不允许修改文件 22
hexdump 显示二进制文件 21
od 显示二进制文件 21

 

 

基础知识

程序/命令

less

语法

 

less [-mMsIN] [+command] [-xtab] [file...]

command自动执行的命名

tab是希望使用的制表间距

file是文件名称

 

-s(squeeze,挤压):将多个空白行压缩成一个

-m(more):显示内容占文件的百分比

-M:显示文件名和行号以及内容占文件的百分比

-I(ignore case忽略大小写

+:指定less从什么地方开始显示数据,加号之后任何内容都会作为初始命令执行

less +/buffer file (从buffer字符串开始显示)

less +37g file (从第37行开始显示)

-N(number,数字):输出中显示行号(默认对空白行编号),类似nl(默认不对空白行编号)

-x:选项后跟数字,告诉less按指定的正则区间(regular interval)设置制表符

less -x4 file (file文件的制表符设置为4个空格)

基本命令
h 显示帮助信息
<Space> 前进一屏
q 退出
高级命令
g 跳到第一行
G 跳到最后一行
= 显示当前行号和文件名
<Return> 前进一行
n<Return> 前进n行
b 后退一屏
y 后退一行
ny 后退n行
d 前进(向下)半屏
u 后退(向上)半屏
<Down> 前进一行
<Up> 后退一行
<PageUp> 后退(向上)一屏
<PageDown> 后退(向下)一屏
ng 跳到第n行
np 跳到文本的n%行处
/pattern 向前搜索指定模式
?pattern 向后搜索指定模式
n 重复搜索:相同方向
N 重复搜索相反方向
!command 执行指定的shell命令
v 使用当前文件启动vi编辑器
-option 改变指定的option
_option 显示option的当前值

 

使用less显示多个文件

:n(next) 切换到列表中的下一个文件
:p(previous) 切换到列表中的前一个文件
:x 切换到列表中的第一个文件
:e(examine) 在列表中插入一个新文件
:d 从列表中删除当前文件
:f 显示当前文件的名称
= 同:f
/*pattern 向前搜索指定的模式
?*pattern 向后搜索指定的模式

less file1 file2:一次只显示一个文件,需要手动切换文件(:n和:p)

在多个文件中搜索时,可以使用/*和?*来代替/和?,这样可以在所有文件中搜索,否则只会在当前文件中搜索。

 

环境变量

PAGER:设置默认的分页程序

export PAGER=less

LESS、MORE

export LESS='-Ms'(设置less默认启动选项)

export MORE='-s'(设置more默认启动选项)

 

 

more

语法

more [-s] [file...]

-s(squeeze,挤压):将多个空白行压缩成一个

基本命令
h 显示帮助信息
<Space> 前进一屏
q 退出程序
高级命令
= 显示当前行号
<Return> 前进一行
d 前进(向下)半屏
f 前进一屏
b 后退一屏
/pattern 向前搜索指定模式
/ 重复上次搜索
!command 执行指定的shell命令
v 使用当前文件启动vi编辑器

 

 

关于进制

关于进制的信息请参阅数论有关书籍

含义 计算机表示法 发音
基10的101 101 “one hundred and one,一百零一”
基16的101 0x101 “hex one-zero-one,十六进制 1-0-1”
基8的101 0101或0o101 “octal one-zero-one,八进制 1-0-1”
基2的101 0b101 “binary one-zero-one,二进制 1-0-1”

 

hexdump与od

hexdump

语法

hexdump -C [file...]

-C(canonical,规范):自动使用合适的选项组合,生成规范输出(类似于下面的输出)

 写道
……
000001f0 00 00 00 00 00 00 00 00 08 00 00 00 00 00 00 00 |................|
00000200 52 e5 74 64 04 00 00 00 e0 8d 01 00 00 00 00 00 |R.td............|
00000210 e0 8d 61 00 00 00 00 00 e0 8d 61 00 00 00 00 00 |..a.......a.....|
00000220 20 02 00 00 00 00 00 00 20 02 00 00 00 00 00 00 | ....... .......|
00000230 01 00 00 00 00 00 00 00 2f 6c 69 62 36 34 2f 6c |......../lib64/l|
00000240 64 2d 6c 69 6e 75 78 2d 78 38 36 2d 36 34 2e 73 |d-linux-x86-64.s|
00000250 6f 2e 32 00 04 00 00 00 10 00 00 00 01 00 00 00 |o.2.............|
00000260 47 4e 55 00 00 00 00 00 02 00 00 00 06 00 00 00 |GNU.............|
00000270 0f 00 00 00 04 00 00 00 14 00 00 00 03 00 00 00 |................|
00000280 47 4e 55 00 cd e8 22 bf c4 68 6a 94 7a 40 a8 5b |GNU..."..hj.z@.[|
00000290 8c b4 1d 06 e2 3a 81 f7 61 00 00 00 72 00 00 00 |.....:..a...r...|
……

hexdump -C [-s offset] [-n length] [file...]

 

offset是在文件开头略过的字节数(任何进制数)

length是要显示的字节数(十进制数)

 

hexdump -C -s 0x120 -n 96 /bin/ls | less



od
语法
od -Ax -tx1z [file...]
以规范格式显示二进制文件
-A(address,地址):指定偏移值进制(对于规范输出来说,指定x,以16进制显示偏移)

-t(type of format,格式类型):控制数据显示方式(对于规范输出来说,指定x1,以16进制显示数据,每次一个字节;指定z,在每行末尾显示相应的ASCII值)

-j(jump over,跳过):指定从文件开头跳过多少字节

-N(number of bytes,字节数量):限制输出字节数量

od -Ax -tx1z -j 0x120 -N 96 /bin/ls (以16进制显示偏移,以16进制显示数据,每次显示一个字节,每行末尾显示相应ASCII值,从偏移0x120开始,显示96字节 - 6行输出)

 

 

 

名词解释

设备驱动程序:为操作系统和特定类型的设备提供接口的程序

终端驱动程序:当使用Unix的基于文本的CLI(命令行界面)时,控制终端的驱动程序称为终端驱动程序

line discipline:线路规程

规范模式(canonical mode):(Unix主要线路规程之一)在规范模式中,键入的字符累积在一个缓冲区(存储区域)中,除非按下Return键,否则不会向程序发送任何东西。(比如shell)

原始模式(raw mode):(Unix主要线路规程之一)在原始模式中,只要键一按下,字符就直接发送给程序。(比如less、vi、Emacs)

cbreak模式(稀有模式):原始模式变种。大多数输入都直接发送给程序,少数几个非常重要的键是由终端驱动程序直接处理的。5个特殊信号的键:intr(^C)、quit(^\)、susp(^Z)、stop(^S)、start(^Q)

 

 

 

 

转贴请保留以下链接

本人blog地址

http://su1216.iteye.com/

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

1
5
分享到:
评论

相关推荐

    鸟哥的私房菜Linux学习笔记

    #### 第二章 Linux是什么 **1. Linux历史** - **起源**: 1991年,Linus Torvalds基于GNU工具和Minix设计灵感开发出Linux内核。 - **重要事件**: - 1969年: Ken Thompson开发Unix原型。 - 1973年: C语言用于重写...

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

    Linux,全称GNU/Linux,是一种基于 Unix 的自由及开放源代码的操作系统,其内核由林纳斯·托瓦兹在1991年首次发布。Linux操作系统被广泛应用于服务器、超级计算机、移动设备(如Android手机)以及家用电脑等各种硬件...

    linux网络编程学习笔记

    第二个是将 32 位 IP转换为 a.b.c.d 的格式 服务信息函数 在网络程序里面我们有时候需要知道端口.IP和服务信息.这个时候我们可以使用以下几 个函数 int getsockname(int sockfd,struct sockaddr *localaddr,int ...

    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...

    linux与unix经典编程

    - 第一部分的第二个至第十个字符分为三个三元组(triplet),分别表示文件属主、组用户和其他用户的权限。 - 第二部分表示文件的硬链接数目。 - 第三部分表示文件属主。 - 第四部分表示文件属主所在的默认组。 - 第...

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

    #### 第二章 Unix标准化及实现 - **主要标准**:介绍POSIX标准、IEEE Std 1003.1以及其他相关标准。 - **主要Unix系统实现简介**:列举不同的Unix变种(如Solaris、AIX、HP-UX等),并简要说明其特点。 - **系统...

    第11章 Linux操作系统基础-教程与笔记习题

    以下是对"第11章 Linux操作系统基础"的主要知识点的详细阐述。 一、Linux操作系统简介 Linux是基于Unix的操作系统,由林纳斯·托瓦兹于1991年创建。它的内核是开源的,允许全球开发者对其进行修改和优化。Linux系统...

    嵌入式Linux入门笔记

    通过“嵌入式Linux入门笔记”,学习者将能了解嵌入式系统的基础概念,熟悉Linux内核、设备驱动、Bootloader的工作原理,掌握构建和调试嵌入式系统的技能,为成为一名合格的嵌入式Linux开发者打下坚实基础。

    python学习笔记

    ### Python学习笔记知识点总结 #### 一、Python简介与特点 **1.1 Python起源与发展** - **创建背景:** Python由Guido van Rossum在1989年圣诞节期间创建,旨在解决当时编程语言的一些不足之处。 - **设计理念...

    c#学习笔记.txt

    c#学习笔记(1) 51099在线学习网发布 文章来源:网络收集 发布时间:2006-05-25 字体: [大 中 小] 51099在线学习网 http://www.51099.com 1, 结构(struct) 与 类(class) [attributes] [modifiers] struct ...

    OS + Unix FreeBSD / MacOSX Snow Leopard 10.6.3-8 / MacBook Pro / apple / MC373

    根据压缩包中的文件名“Macbook_Pro上安装三系统详解教程.txt”,我们可以推测这个教程将指导用户如何在MacBook Pro上同时安装Unix FreeBSD、MacOSX Snow Leopard以及可能的第三个操作系统,例如Windows或Linux。...

    linux-python

    Linux是一个基于Unix的操作系统,其核心部分是内核,它负责管理和调度计算机的硬件资源。Linux提供了丰富的命令行工具,允许用户进行文件管理、进程控制、网络配置等一系列操作。对于初学者来说,学习Linux的基础...

    总结搜集的shell脚本学习笔记(完结篇).pdf

    ### Shell脚本编程知识点概述 #### 一、预备知识与基本概念 在开始Shell脚本文档的学习之前,首先需要理解Shell...以上就是文档《总结搜集的shell脚本学习笔记(完结篇)》中所涵盖的主要知识点,希望对你有所帮助。

    Linux笔记[整理].pdf

    Linux操作系统是开源的类Unix系统,广泛应用于服务器、嵌入式设备和桌面环境中。了解Linux的基础知识,特别是其目录结构和命令行操作,对于软件开发人员来说至关重要。 首先,让我们来详细了解一下Linux的目录结构...

    计算机导论-教案.pdf

    - 电子管阶段:标志着计算机的诞生,ENIAC是第一台电子计算机。 - 晶体管阶段:提高了计算机的效率和可靠性。 - 集成电路阶段:推动了计算机的小型化和性能提升。 - 超大规模集成电路阶段:现代计算机的基础,...

    Linux 101考试模块化培训笔记(Andrew McGill)Linux 101 Examination Modular Training Notes (Andrew McGill)

    Linux 101考试模块化培训笔记是为Linux专业人士协会(LPI)的LPI 101考试准备的,尤其针对考试的第2版目标。这本培训笔记由Andrew McGill编写,属于Leading Edge Business Solutions公司的Linux培训计划的一部分。该...

    网络三级考试笔试笔记教材

    - 操作系统:Windows、UNIX、Linux等。 3. **计算机技术指标**: - **位数**:指寄存器的字长,如8位、16位、32位、64位等。 - **速度**:通常以主频衡量CPU的运算速度。 - **容量**:包括内存和外存,常用单位...

Global site tag (gtag.js) - Google Analytics