Linux man语法结构说明
一.man手册的内容结构(说明书页的格式):
标题含义:
Name命令的名称和用途(摘要)
Synopsis命令语法(摘要)
Description完整描述
Environment命令使用的环境变量
Author作者
Files对该命令重要的文件列表
See also查看相关的信息的位置
Diagnostics可能的错误和警告Bugs错误、缺点、警告
其中查看命令用法的时候我们最关心的应该是第二和第三项。
二·man手册中Linux命令语法的形式描述
options:命令选项有两种形式:长选项(--)和短选项(-):
长选项: 用 -- 引导,后面跟完整的单词,如 --help
短选项: 用 - 引导,后面跟单个的字符, 如 -a
多个短选项可以组合使用,例如:-h -l -a == -hla
但是长选项不能组合使用,如 --help后面就不能再跟另外一个单词了。
options 也可以有自己的参数,可称为arguments,(注意,选项与选项之间,选项与参数之间,参数与参数之间必须有空格!)而且,命令的选项和参数所使用的符号也有相应的含义:
1.[]方括号中的项是可选的;
2.<>不在方括号或是在大括号中的项是必选项(也有说<>括起来的,不过我没还见过);
3.黑色粗体字必须按原样准确键入,这一类可能是命令名,标志和文字字符;
4.斜体字必须用适当的值代替(不显示斜体字的系统上通常用下划线代替),就如变量一般,需要根据情况自己添加适当的值;
5.后面接省略号(…)的参数可以多次重复;
6.如果一个单独的选项和一个参数组合在一起,那么该选项和参数必须同时使用;
7.由 |(竖线)字符分开的两个或多个项,表示可以从这个列表中选择一个项;
8.{a|b}则说明a和b之间必须要选一个。
几个简单例子:
find命令是linux下的查找文件命令,其man手册的SYNOPSIS的格式为
[plain] view plaincopy
find [-H] [-L] [-P] [-D debugopts] [-Olevel] [path...] [expression]
其中所有的选项都用'[]'括起来,说明所有选项都是可选的(当然,只是这样就没办法实现它的作用了);
path是可选项,其默认值是当前目录,而且被'...'修饰,说明可以添加多个目录;
-D debugopts说明-D选项之后还应加上相应的参数;
[a|b]说明a和b可以选其中一个也可以不选;
{a|b}则说明a和b之间必须要选一个。
三:命令实例分析
mkdir命令,man mkdir中
NAME
mkdir - make directories
表示mkdir命令是用来创建目录的
SYNOPSIS
mkdir [OPTION]... DIRECTORY...
表示mkdir 后面可选option选项,但必须有需要创建的目标目录,可跟多个
DESCRIPTION
Create the DIRECTORY(ies), if they do not already exist.
Mandatory arguments to long options are mandatory for short options too.
-m, --mode=MODE
set file mode (as in chmod), not a=rwx - umask
-p, --parents
no error if existing, make parent directories as needed
-v, --verbose
print a message for each created directory
-Z, --context=CTX
set the SELinux security context of each created directory to CTX
--help display this help and exit
--version
output version information and exit
-p和-v选项并无特殊,其后面不用跟参数,具体作用请百度
-m , --mode=MODE和-Z, --context=CTX,应用格式应为
mkdir -m 721 ./a_dir
mkdir --mode=721 ./a_dir
好像记得在哪里见过有这么说的,但我实际在自己电脑上测试的时候并没有区别(我用的是fedora 19 32位系统)。
mkdir -m=721 ./a_dir
mkdri --mode 721 ./a_dir
效果是一样的。而且长选项--mode=721之后依然可以跟其他选项,比如-p,有与前处长选项之后不能跟其他选项冲突了;不过--version之后的确是不能跟另外的选项的,否则会报错(此处留作保留)。
还有一种情况,比如man find中,
-maxdepth levels
Descend at most levels (a non-negative integer) levels of directories below the command line arguments.
-maxdepth 0
means only apply the tests and actions to the command line arguments.
表示寻找的目录最大层级数,用法是find 一些选项 -maxdepth 3 另一些选项。
命令帮助中出现的[] <>含义在查看命令帮助时,会出现[],<>,|等符号,它们的含义如下:
[] #表示是可选的;
<> #表示是可变化的;
x|y|z #表示只能选择一个;
-abc #表示三个参数(或任何二个)的混合使用
备注:内容来自网络有人,读后自觉描述的很好,是授人以渔。所以,如有侵权,请联系本人删除,谢谢!
Linux man语法结构说明的更多相关文章
- 04 Linux 指令语法结构与帮助命令
一.Linux指令语法结构 [tyang3@localhost Desktop]$ command [-options] [arguments] 指令 选项 参 ...
- PHP 数组遍历 foreach 语法结构
foreach 语法结构用于遍历数组. foreach() PHP foreach() 语法结构用于遍历操作或输出数组,foreach() 仅能用于遍历数组或对象,当试图将其用于其它数据类型或者一个未 ...
- Linux C语言结构体-学习笔记
Linux C语言结构体简介 前面学习了c语言的基本语法特性,本节进行更深入的学习. 预处理程序. 编译指令: 预处理, 宏定义, 建立自己的数据类型:结构体,联合体,动态数据结构 c语言表达式工具 ...
- php总结1 ——php简介、工作原理、运行环境、文件构成、语法结构、注释
1.1 PHP 超文本预处理程序.实际就是制作网站的脚本程序 1.2 运行环境: wamp——windowns+apache+mySQL+php 常用于开发.学习和研究 lamp ——linu ...
- 精通awk系列(6):awk命令结构和awk语法结构
回到: Linux系列文章 Shell系列文章 Awk系列文章 awk命令行结构和语法结构 awk命令行结构 awk [ -- ] program-text file ... (1) awk -f p ...
- (第五篇)Linux操作系统基本结构介绍
Linux操作系统基本结构介绍 Linux系统一般有4个主要部分:内核.shell.文件系统和应用程序.内核.shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序.管理文件并使用 ...
- Linux 标准目录结构
初学Linux,首先需要弄清Linux 标准目录结构 / root --- 启动Linux时使用的一些核心文件.如操作系统内核.引导程序Grub等. home --- 存储普通用户的个人文件 ftp ...
- 【转】 Linux下目录结构
装完Linux,首先需要弄清Linux 标准目录结构 / root — 启动Linux时使用的一些核心文件.如操作系统内核.引导程序Grub等. home — 存储普通用户的个人文件 ftp — 用户 ...
- CSS_简介/语法结构/长度单位/应用方式/标签的样式重置/表单样式重置
一.CSS简介: w3c(World Wide Web Consortium):万维网联盟,是规定网页标准的一个组织(叫做Web标准) Web标准:是由w3c和其他标准化组织制定的一系列标准的集合, ...
随机推荐
- python's twenty-fifth day for me 模块
模块: py文件就是模块. python之所以好用,因为模块多. 内置模块:python安装的时候自带的. 扩展模块:别人写好的,需要安装后可直接使用. 自定义模块:自己写的模块. 序列化模块: 能存 ...
- 「小程序JAVA实战」 小程序的事件(11)
转自:https://idig8.com/2018/08/09/xiaochengxu-chuji-11/ 我们以前在web开发的时候,web页面也有一些相关的事件,当然小程序要接触屏幕要进行一些点击 ...
- 玩转angularJs——通过自定义ng-model,不仅仅只是input可以实现双向数据绑定
体验更优排版请移步原文:http://blog.kwin.wang/programming/angularJs-user-defined-ngmodel.html angularJs双向绑定特性在开发 ...
- eclipse+minGW 调试ffmpeg错误:No symbol table is loaded. Use the "file" command.
转载地址:http://www.blogjava.net/fancydeepin/archive/2012/11/19/391520.html 数据结构第二篇: eclipse SDK 安装和配置 ...
- java Web中页面跳转方式之请求转发
1.在一个请求中跨越多个Servlet 2.多个Servlet在一个请求中,他们共享request对象.就是在Servlet01中setAttribute()保存数据在Servlet02中由getAt ...
- spring 3.1.13中新增的util @value注解,给类或方法注入值
在spring 3.0以上版本中,可以通过使用@value,对一些如xxx.properties文件 ,进行键值对的注入,例子如下: 一.类变量注入 1 首先在applicationContext.x ...
- 06-Location详解之精准匹配
之前nginx不是编译过吗?现在重新make install一下. 刚刚这个是我们新安装的.原始版的nginx,配置文件比较少,便于我们做调试. 试试精准匹配的概念. 匹配的是/.优先匹配这个最精准的 ...
- linux top 命令各参数详解
简介 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器. top显示系统当前的进程和其他状况,是一个动态显示过程,即可以通过用户按 ...
- jquery 获取url 参数方法 以及 解决url中文问题
//jQuery 动态给a 标签赋值 跳转 新的页面打开. /* <a class="btn btn-success" id="test" target= ...
- c++ 门面模式(Facade)
门面模式是比较常用的一种设计模式,我们可能在无意中就会使用,门面模式就是用一个门面类来处理子系统的复杂关系,门面类简单的Api接口供客户端调用.用一个简单的演播室来表示. #include <i ...