linux man的使用
在Linux中无论是管理系统还是在Linux环境下编程,内嵌的手册man都是一个很好用的工具,“Linux下不懂得就找man”(man是manual的意思)。本文将介绍我所知道的所有关于man的知识(这么说也是为了后续如果有所补充的话,能够更加完备)。
一、man手册的组成
man涉及的内容广泛,另外也是为了让用户更便捷地使用man,man分成了多个section,包括:
1、commands:大多数的普通命令都在这个章节介绍
2、system calls:主要介绍一些系统调用,比如说open、close,当然man只能查询到简单的概念,比如说函数声明,所需包含的头文件,主要的一些使用也可以从中查询到,但是具体的一些操作还是要自己去领会的。
3、library calls:库函数的介绍,比如说:printf、fwrite等等,这个对于程序员来说应该还是不够的。
4、special files:特殊文件,也就是/dev下的各种设备文件。
5、file formats and convertions:是指文件的格式,比如passwd,会说明这个文件中各个字段的含义。
6、games for linux:给游戏自己留的,由各个游戏自己定义
7、macro packages and conventions:是附件还有一些变量,比如向environ这种全局变量在这里有说明
8、system management commands:系统管理用的命令,这些命令只能由root使用,如:ifconfig
9、Kernel routines:用于存放内核例行程序的文档。
二、为什么要了解man文档的章节
其实我们应该是有感悟的,只要键入简单的:man ls ,这样就可以查看man文档中关于ls的介绍了,那么我就可以不用管到底ls是归纳于哪个文档中了,但是有如果一个命令(或者是函数)在多个章节中都包含了呢?比如说sleep,在commands中和library calls中都有sleep的介绍,那么man是怎么查询的呢?man按顺序,从第一章节开始(和我们翻阅书籍一样),所以我们直接用man sleep查询到的是第一章(commands)里面的sleep的介绍。所以了解man文档的章节还是很重要的。
二、如何阅读man文档
例如:当我们用man查询ifconfig的时候,输入man ifconfig,终端就会打印出如下的文字,其中IFCONFIG(8)表示,这个命令是在man文档中的第8章,(如果你发现你所查阅的命令或函数并不是第八章--系统管理命令,那么就要确认一下是否还有存在其他章节中也有ifconfig命令了,当然,ifconfig在Linux中只有一个,举个栗子罢了)。
大多数的的命令都包含一下几个部分:
1)name :不仅给出命令(函数)名称,还会有大概的介绍或者说简单的作用;
2)synopsis:概要,简单的使用方法;
3)description:详细介绍命令(函数)怎么使用,包括每种使用方法的作用,非常细致;
4)author:该程序(函数)的作者
5)reporting bugs:bug的记录
6)copyright:版权声明
7)see also:参考文献吧(类似)
系统默认的是英文版的,当然可以改成中文版的,但是还是英文版的读起来更加贴切。
参考网址:http://www.cnblogs.com/xuxm2007/archive/2011/06/16/2082297.html
http://www.cnblogs.com/hnrainll/archive/2011/09/06/2168604.html (这个博客中还介绍了关于Ubuntu中怎么安装中文包,如果你对英文实在无感,可以去参考一下,但我还是觉得看看英语,挺好!)
linux man的使用的更多相关文章
- Linux 驱动开发
linux驱动开发总结(一) 基础性总结 1, linux驱动一般分为3大类: * 字符设备 * 块设备 * 网络设备 2, 开发环境构建: * 交叉工具链构建 * NFS和tftp服务器安装 3, ...
- Linux 内核概述 - Linux Kernel
Linux 内核学习笔记整理. Unix unix 已有40历史,但计算机科学家仍认为其是现存操作系统中最大和最优秀的系统,它已成为一种传奇的存在,历经时间的考验却依然声名不坠. 1973 年,在用 ...
- 死磕内存篇 --- JAVA进程和linux内存间的大小关系
运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...
- NodeJs在Linux下使用的各种问题
环境:ubuntu16.04 ubuntu中安装NodeJs 通过apt-get命令安装后发现只能使用nodejs,而没有node命令 如果想避免这种情况请看下面连接的这种安装方式: 拓展见:Linu ...
- [linux]阿里云主机的免登陆安全SSH配置与思考
公司服务器使用的第三方云端服务,即阿里云,而本地需要经常去登录到服务器做相应的配置工作,鉴于此,每次登录都要使用密码是比较烦躁的,本着极速思想,我们需要配置我们的免登陆. 一 理论概述 SSH介绍 S ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 1.实施前准备工作 1.1 服务器安装操 ...
- SQL Server on Linux 理由浅析
SQL Server on Linux 理由浅析 今天的爆炸性新闻<SQL Server on Linux>基本上在各大科技媒体上刷屏了 大家看到这个新闻都觉得非常震精,而美股,今天微软开 ...
- Microsoft Loves Linux
微软新任CEO纳德拉提出的“Microsoft Loves Linux”,并且微软宣布.NET框架的开源,近期Microsoft不但宣布了Linux平台的SQL Server,还宣布了Microsof ...
- Linux 江湖系列阶段性总结
引言 我使用 Linux 已经有很多年了,最开始接触 Linux 的时候是从 RedHat 9(没有 Enterprise),中途换过 N 个不同的发行版.多年前,我在 BlogJava 上面分享 J ...
随机推荐
- IIS7错误“Web服务器被配置为不列出此目录的内容”的解决办法
*打开 Internet 信息服务(IIS)管理器 - 目录浏览 选择启用即可.
- CMakeLists.txt
vtkRendering.libvtkCommon.lib ${VTK_LIBRARIES} vtkRendering vtkCommon
- Linux系统下配置环境变量
一.环境变量文件介绍 转自:http://blog.csdn.net/cscmaker/article/details/7261921 Linux中环境变量包括系统级和用户级,系统级的环境变量是每个登 ...
- 利用gcc自带的功能-fstack-protector检测栈溢出及其实现
最近又遇到了一个崩溃,栈回溯非常怪异. /lib/i386-linux-gnu/libc.so.(gsignal+0x4f) [0xb2b751df] /lib/i386-linux-gnu/libc ...
- HTML5 canvas学习笔记(一)
canvas是HTML5中新增的标签,下面是各浏览器的支持程度: canvas的默认大小为:宽-300px,高-150px(注意:画布的大小作为canvas标签的行内样式设置,而且是没有“px”单位的 ...
- eclipse常用快捷键
1. ctrl+shift+r:打开资源 这可能是所有快捷键组合中最省时间的了.这组快捷键可以让你打开你的工作区中任何一个文件,而你只需要按下文件名或mask名中的前几个字母,比如applic*.xm ...
- 在Azure虚拟机上安装VNC
我们知道,Azure提供的linux虚拟机镜像是没有桌面的,是base版的,大多情况下能满足绝大部分工作需要,甚至很多习惯使用命令行的读者,反而用不惯带桌面的linux OS,但是有些情况下,桌面还是 ...
- Django缓存系统设置
参考: http://lesliezhu.github.io/public/2016/04/19/django-cache.html http://www.opscoder.info/django_c ...
- Ansible Ubuntu 安装部署
一.安装: $ sudo apt-get install ansible 二.配置: a.基本配置 $ cd /etc/ansible/ $ sudo cp hosts hosts_back 备份一个 ...
- iOS 创建一个可以点击并拖拽的Button
HSCButton.h #import <UIKit/UIKit.h> @interface HSCButton : UIButton { CGPoint beginPoint; } @p ...