解读Linux命令格式
环境
Linux HA5-139JK 2.6.18-164.el5 #1 SMP Tue Aug 18 15:51:48 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux
Linux命令很多,但对格式本身解读的文章几乎是空白,都在凭对格式的猜测来写命令,就此在网上搜集此类资料都很少而且很不全面,想找官方的,也没找到。根据自己的理解写一篇出来,希望对初学者有用。
一、命令的一般格式
command [options] [arguments]
command:命令
options:--单词 或 -单字
arguments:参数,有时候选项也带参数。
二、命令格式中的符号含义
在查看命令帮助时,会出现[],<>,|等符号,它们的含义如下:
[] 表示是可选的;
<> 表示可变选项,一般是多选一,而且必须是要选其一。
x|y|z 多选一,如果加上[],可不选。
-abc 多选,如果加上[],可不选。
三、常见命令格式的举例说明
对于命令格式中常常可以看到如下的格式:
1、[ --atime-preserve ],表示一个可选选项。
2、[ -B, --read-full-records ],表示一个可选选项,简写为-B,完整写法是--read-full-records,两者在用的时候只能选择其一,它们的功能都是完全一样的。一般带“-”开头的选项都是简写,“--”开头的命令都是完整写法,并且,一般的选择都有一个简写,一个完整写法,简写写在前面,完整写法写在后面,中间用逗号分割。
3、[ -b, --blocking-factor N ],表示一个可选选项,简写为-b N,完整写法是--blocking-factor N,N代表这个参数需要一个值,在详细描述中可以看到。当然,选项可以带参数,也可以不带参数,大部分选项是没有参数的,相当于控制开关。命令的书写如:tar -b=10000 -cvf com.tar.gz com
4、[ -F, --info-script F --new-volume-script F ],表示有两个同时存在的可选命令,-F F --new-volume-script F,两个选项必须同时出现,在此,后面的选项没有简写。
5、[ -z, --gzip, --gunzip, --ungzip ],表示一个可选选项,它的写法有多种,除了-z之外,其他的都是它的完整写法。
6、[ -[0-7][lmh] ],表示嵌套的可选选项,0-7表示取值从0到7取一个。
四、通过tar命令行来解读Unix命令:
[kf139@HA5-139JK bin]$ man tar
TAR(1) tar TAR(1)
NAME(名称)
tar - The GNU version of the tar archiving utility
SYNOPSIS(大纲)
tar <operation> [options]
Operations:(操作选项)
[-]A --catenate --concatenate
[-]c --create
[-]d --diff --compare
[-]r --append
[-]t --list
[-]u --update
[-]x --extract --get
--delete
Common Options:(公共选项)
-C, --directory DIR
-f, --file F
-j, --bzip2
-p, --preserve-permissions
-v, --verbose
-z, --gzip
All Options:(所有选项)
[ --atime-preserve ] [ -b, --blocking-factor N ] [ -B, --read-full-records ] [ --backup BACKUP-TYPE ] [ --block-compress ] [ -C,
--directory DIR ] [ --check-links ] [ --checkpoint ] [ -f, --file [HOSTNAME:]F ] [ -F, --info-script F --new-volume-script F ] [
--force-local ] [ --format FORMAT ] [ -g, --listed-incremental F ] [ -G, --incremental ] [ --group GROUP ] [ -h, --dereference ] [
--help ] [ -i, --ignore-zeros ] [ --ignore-case ] [ --ignore-failed-read ] [ --index-file FILE ] [ -j, --bzip2 ] [ -k, --keep-old-
files ] [ -K, --starting-file F ] [ --keep-newer-files ] [ -l, --one-file-system ] [ -L, --tape-length N ] [ -m, --touch, --modifica-
tion-time ] [ -M, --multi-volume ] [ --mode PERMISSIONS ] [ -N, --after-date DATE, --newer DATE ] [ --newer-mtime DATE ] [ --no-
anchored ] [ --no-ignore-case ] [ --no-recursion ] [ --no-same-permissions ] [ --no-wildcards ] [ --no-wildcards-match-slash ] [
--null ] [ --numeric-owner ] [ -o, --old-archive, --portability, --no-same-owner ] [ -O, --to-stdout ] [ --occurrence NUM ] [
--overwrite ] [ --overwrite-dir ] [ --owner USER ] [ -p, --same-permissions, --preserve-permissions ] [ -P, --absolute-names ] [
--pax-option KEYWORD-LIST ] [ --posix ] [ --preserve ] [ --acls ] [ --selinux ] [ --xattrs ] [ --no-acls ] [ --no-selinux ] [ --no-
xattrs ] [ -R, --block-number ] [ --record-size SIZE ] [ --recursion ] [ --recursive-unlink ] [ --remove-files ] [ --rmt-command CMD ]
[ --rsh-command CMD ] [ -s, --same-order, --preserve-order ] [ -S, --sparse ] [ --same-owner ] [ --show-defaults ] [ --show-omitted-
dirs ] [ --strip-components NUMBER, --strip-path NUMBER (1) ] [ --suffix SUFFIX ] [ -T, --files-from F ] [ --totals ] [ -U,
--unlink-first ] [ --use-compress-program PROG ] [ --utc ] [ -v, --verbose ] [ -V, --label NAME ] [ --version ] [ --volno-file F ] [
-w, --interactive, --confirmation ] [ -W, --verify ] [ --wildcards ] [ --wildcards-match-slash ] [ --exclude PATTERN ] [ -X,
--exclude-from FILE ] [ -Z, --compress, --uncompress ] [ -z, --gzip, --gunzip, --ungzip ] [ -[0-7][lmh] ]
(1) tar-1.14 uses --strip-path, tar-1.14.90+ uses --strip-components
DESCRIPTION(描述)
This manual page documents the GNU version of tar, an archiving program designed to store and extract files from an archive file known
as a tarfile. A tarfile may be made on a tape drive, however, it is also common to write a tarfile to a normal file. The first argu-
ment to tar must be one of the options Acdrtux, followed by any optional functions. The final arguments to tar are the names of the
files or directories which should be archived. The use of a directory name always implies that the subdirectories below should be
included in the archive.
EXAMPLES(例子)
tar -xvf foo.tar
verbosely extract foo.tar
tar -xzf foo.tar.gz
extract gzipped foo.tar.gz
tar -cjf foo.tar.bz2 bar/
create bzipped tar archive of the directory bar called foo.tar.bz2
tar -xjf foo.tar.bz2 -C bar/
extract bzipped foo.tar.bz2 after changing directory to bar
tar -xzf foo.tar.gz blah.txt
extract the file blah.txt from foo.tar.gz
FUNCTION LETTERS(功能选项)
One of the following options must be used:
-A, --catenate, --concatenate
append tar files to an archive
-c, --create
create a new archive
-d, --diff, --compare
find differences between archive and file system
-r, --append
append files to the end of an archive
-t, --list
list the contents of an archive
-u, --update
only append files that are newer than the existing in archive
-x, --extract, --get
extract files from an archive
--delete
delete from the archive (not for use on mag tapes!)
COMMON OPTIONS(公共选项)
-C, --directory DIR
change to directory DIR
-f, --file [HOSTNAME:]F
use archive file or device F (default "-", meaning stdin/stdout)
-j, --bzip2
filter archive through bzip2, use to decompress .bz2 files
-p, --preserve-permissions
extract all protection information
-v, --verbose
verbosely list files processed
-z, --gzip, --ungzip
filter the archive through gzip
ALL OPTIONS(所有选项)
--atime-preserve
don’t change access times on dumped files
-b, --blocking-factor N
block size of Nx512 bytes (default N=20)
-B, --read-full-blocks
reblock as we read (for reading 4.2BSD pipes)
--backup BACKUP-TYPE
backup files instead of deleting them using BACKUP-TYPE simple or numbered
--block-compress
block the output of compression program for tapes
-C, --directory DIR
change to directory DIR
--check-links
warn if number of hard links to the file on the filesystem mismatch the number of links recorded in the archive
--checkpoint
print directory names while reading the archive
-f, --file [HOSTNAME:]F
use archive file or device F (default "-", meaning stdin/stdout)
-F, --info-script F --new-volume-script F
run script at end of each tape (implies --multi-volume)
--force-local
archive file is local even if has a colon
--format FORMAT
selects output archive format
v7 - Unix V7
oldgnu - GNU tar <=1.12
gnu - GNU tar 1.13
ustar - POSIX.1-1988
posix - POSIX.1-2001
-g, --listed-incremental F
create/list/extract new GNU-format incremental backup
-G, --incremental
create/list/extract old GNU-format incremental backup
-h, --dereference
don’t dump symlinks; dump the files they point to
--help like this manpage, but not as cool
-i, --ignore-zeros
ignore blocks of zeros in archive (normally mean EOF)
--ignore-case
ignore case when excluding files
--ignore-failed-read
don’t exit with non-zero status on unreadable files
--index-file FILE
send verbose output to FILE instead of stdout
-j, --bzip2
filter archive through bzip2, use to decompress .bz2 files
-k, --keep-old-files
keep existing files; don’t overwrite them from archive
-K, --starting-file F
begin at file F in the archive
--keep-newer-files
do not overwrite files which are newer than the archive
-l, --one-file-system
stay in local file system when creating an archive
-L, --tape-length N
change tapes after writing N*1024 bytes
-m, --touch, --modification-time
don’t extract file modified time
-M, --multi-volume
create/list/extract multi-volume archive
--mode PERMISSIONS
apply PERMISSIONS while adding files (see chmod(1))
-N, --after-date DATE, --newer DATE
only store files newer than DATE
--newer-mtime DATE
like --newer, but with a DATE
--no-anchored
match any subsequenceof the name’s components with --exclude
--no-ignore-case
use case-sensitive matching with --exclude
--no-recursion
don’t recurse into directories
--no-same-permissions
apply user’s umask when extracting files instead of recorded permissions
--no-wildcards
don’t use wildcards with --exclude
--no-wildcards-match-slash
wildcards do not match slashes (/) with --exclude
--null --files-from reads null-terminated names, disable --directory
--numeric-owner
always use numbers for user/group names
-o, --old-archive, --portability
like --format=v7; -o exhibits this behavior when creating an archive (deprecated behavior)
-o, --no-same-owner
do not attempt to restore ownership when extracting; -o exhibits this behavior when extracting an archive
-O, --to-stdout
extract files to standard output
--occurrence NUM
process only NUM occurrences of each named file; used with --delete, --diff, --extract, or --list
--overwrite
overwrite existing files and directory metadata when extracting
--overwrite-dir
overwrite directory metadata when extracting
--owner USER
change owner of extraced files to USER
-p, --same-permissions, --preserve-permissions
extract all protection information
-P, --absolute-names
don’t strip leading ‘/’s from file names
--pax-option KEYWORD-LIST
used only with POSIX.1-2001 archives to modify the way tar handles extended header keywords
--posix
like --format=posix
--preserve
like --preserve-permissions --same-order
--acls this option causes tar to store each file’s ACLs in the archive.
--selinux
this option causes tar to store each file’s SELinux security context information in the archive.
--xattrs
this option causes tar to store each file’s extended attributes in the archive. This option also enables --acls and--selinux if
they haven’t been set already, due to the fact that the data for those are stored in special xattrs.
--no-acls
This option causes tar not to store each file’s ACLs in the archive and not to extract any ACL information in an archive.
--no-selinux
this option causes tar not to store each file’s SELinux security context information in the archive and not to extract any
SELinux information in an archive.
--no-xattrs
this option causes tar not to store each file’s extended attributes in the archive and not to extract any extended attributes
in an archive. This option also enables --no-acls and --no-selinux if they haven’t been set already.
-R, --record-number
show record number within archive with each message
--record-size SIZE
use SIZE bytes per record when accessing archives
--recursion
recurse into directories
--recursive-unlink
remove existing directories before extracting directories of the same name
--remove-files
remove files after adding them to the archive
--rmt-command CMD
use CMD instead of the default /usr/sbin/rmt
--rsh-command CMD
use remote CMD instead of rsh(1)
-s, --same-order, --preserve-order
list of names to extract is sorted to match archive
-S, --sparse
handle sparse files efficiently
--same-owner
create extracted files with the same ownership
--show-defaults
display the default options used by tar
--show-omitted-dirs
print directories tar skips while operating on an archive
--strip-components NUMBER, --strip-path NUMBER
strip NUMBER of leading components from file names before extraction
(1) tar-1.14 uses --strip-path, tar-1.14.90+ uses --strip-components
--suffix SUFFIX
use SUFFIX instead of default ’~’ when backing up files
-T, --files-from F
get names to extract or create from file F
--totals
print total bytes written with --create
-U, --unlink-first
remove existing files before extracting files of the same name
--use-compress-program PROG
access the archive through PROG which is generally a compression program
--utc display file modification dates in UTC
-v, --verbose
verbosely list files processed
-V, --label NAME
create archive with volume name NAME
--version
print tar program version number
--volno-file F
keep track of which volume of a multi-volume archive its working in FILE; used with --multi-volume
-w, --interactive, --confirmation
ask for confirmation for every action
-W, --verify
attempt to verify the archive after writing it
--wildcards
use wildcards with --exclude
--wildcards-match-slash
wildcards match slashes (/) with --exclude
--exclude PATTERN
exclude files based upon PATTERN
-X, --exclude-from FILE
exclude files listed in FILE
-Z, --compress, --uncompress
filter the archive through compress
-z, --gzip, --gunzip, --ungzip
filter the archive through gzip
--use-compress-program PROG
filter the archive through PROG (which must accept -d)
-[0-7][lmh]
specify drive and density
BUGS(缺陷)
The GNU folks, in general, abhor man pages, and create info documents instead. The maintainer of tar falls into this category. Thus
this man page may not be complete, nor current, and was included in the Red Hat CVS tree because man is a great tool :). This man
page was first taken from Debian Linux and has since been loving updated here.
REPORTING BUGS(报道中的缺陷)
SEE ALSO(参考)
The full documentation for tar is maintained as a Texinfo manual. If the info and tar programs are properly installed at your site,
the command
info tar
should give you access to the complete manual.
AUTHORS(作者)
GNU Oct 2004 TAR(1)
上面的tar命令用法很复杂,可以看个简单的rm删除命令:
[kf139@HA5-139JK bin]$ man rm
RM(1) User Commands RM(1)
NAME
rm - remove files or directories
SYNOPSIS
rm [OPTION]... FILE...
DESCRIPTION
This manual page documents the GNU version of rm. rm removes each specified file. By default, it does not remove directories.
If a file is unwritable, the standard input is a tty, and the -f or --force option is not given, rm prompts the user for whether to
remove the file. If the response is not affirmative, the file is skipped.
OPTIONS
Remove (unlink) the FILE(s).
-f, --force
ignore nonexistent files, never prompt
-i, --interactive
prompt before any removal
--no-preserve-root do not treat ‘/’ specially (the default)
--preserve-root
fail to operate recursively on ‘/’
-r, -R, --recursive
remove directories and their contents recursively
-v, --verbose
explain what is being done
--help display this help and exit
--version
output version information and exit
By default, rm does not remove directories. Use the --recursive (-r or -R) option to remove each listed directory, too, along with
all of its contents.
To remove a file whose name starts with a ‘-’, for example ‘-foo’, use one of these commands:
rm -- -foo
rm ./-foo
Note that if you use rm to remove a file, it is usually possible to recover the contents of that file. If you want more assurance
that the contents are truly unrecoverable, consider using shred.
AUTHOR
Written by Paul Rubin, David MacKenzie, Richard Stallman, and Jim Meyering.
REPORTING BUGS
COPYRIGHT
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software. You may redistribute copies of it under the terms of the GNU General Public License
SEE ALSO
chattr(1), shred(1)
The full documentation for rm is maintained as a Texinfo manual. If the info and rm programs are properly installed at your site, the
command
info rm
should give you access to the complete manual.
rm 5.97 July 2009 RM(1)
五、Linux命令和Unix命令格式大致都一样,不同的系统,命令也可能不同。有些命令虽然选项很多,但不一定全支持。用的时候还是多试试为好,实践才是最可靠的检验标准,本文旨在让初学者能快速看懂man打印出命令帮助。欢迎拍砖!
本文出自 “熔 岩” 博客,请务必保留此出处http://lavasoft.blog.51cto.com/62575/533131
- linux命令格式及基础命令(一)
linux命令格式 ~]#COMMAND [选项] [参数] 例如: ~]#ls 不带任何选项和参数 ``` stylus ~]#ls -lh /etc 列出/etc下所有文件和目录,同时要求以格式和 ...
- Linux命令格式及帮助命令详解
昨天看了一个教程,关于Linux命令的,本来以为当是复习随便看看的,结果看了不禁汗颜,这个真挺有学问的,很多东西都是我还不知道的,故此做总结,此文适合于对Linux命令有一定了解但又不是很深入的孩子, ...
- Linux命令格式及7个常见终端命令
Linux命令格式 Linux常见的7个终端命令
- linux命令格式及who、whoami、su和passwd命令
linux命令格式及who.whoami.su和passwd命令 1. Linux命令的格式 Linux命令的语法格式: 命令 [选项] [参数] 命令格式中命令.选项.参数的具体含义: 命令:告诉L ...
- 【深入学习linux】Linux命令格式
一.命令基本格式 命令提示符 [root@localhost ~]# root 代表当前登录用户,Linux当中管理员账号是 root localhost 代表主机名 ~ 代表当前所在目录(家目录), ...
- linux 命令格式和帮助
命令的格式: command [options] [arguments] command:命令 options: --单词全称 或 -单字简称 如: ls --all 等于 ls - ...
- Linux命令格式、终端类型和获取帮助的方法
Linux用户类型 Root用户:超级管理员,权限很大 普通用户:权限有限 终端 terminal 终端类型 物理终端:鼠标.键盘.显示器 虚拟终端:软件模拟出来的终端 控制台终端: /dev/con ...
- linux 命令格式、ls命令、du命令
命令格式:命令 [-选项] [参数] ls -la /etc1.个别命令不遵循此格式2.当有多个选项时,可以写在一起,大多数顺序可以随意3.简化选项与完整选项 -a 等于 --all ls命令:ls ...
- linux 命令格式
1.命令 选项 参数 选项——短选项: - 多个选项可以合在一起书写 ——长选项:-- 选项是一个word 参数:命令的作用对象 ls -la /etc /opt 2.su swit ...
随机推荐
- 【bzoj3774】最优选择 网络流最小割
题目描述 小N手上有一个N*M的方格图,控制某一个点要付出Aij的代价,然后某个点如果被控制了,或者他周围的所有点(上下左右)都被控制了,那么他就算是被选择了的.一个点如果被选择了,那么可以得到Bij ...
- BZOJ3875 AHOI2014/JSOI2014骑士游戏(动态规划)
容易想到设f[i]为杀死i号怪物所消耗的最小体力值,由后继节点更新.然而这显然是有后效性的,正常的dp没法做. 虽然spfa已经死了,但确实还是挺有意思的.只需要用spfa来更新dp值就可以了.dij ...
- Luogu4897 【模板】最小割树
没事干写一发模板. #include<iostream> #include<cstdio> #include<cmath> #include<cstdlib& ...
- QoS专题-第1期-QoS理论篇
QoS理论篇 1 QoS的产生 随着网络技术的飞速发展,IP网络已经从当初的单一数据网络向集成数据.语音.视频.游戏的多业务网络转变.网络中所承载的数据呈几何级倍数增长,而且这些业务对网络带 ...
- 【刷题】LOJ 6038 「雅礼集训 2017 Day5」远行
题目描述 Miranda 生活的城市有 \(N\) 个小镇,一开始小镇间没有任何道路连接.随着经济发现,小镇之间陆续建起了一些双向的道路但是由于经济不太发达,在建设过程中,会保证对于任意两个小镇,最多 ...
- [AT2377] [agc014_e] Blue and Red Tree
题目链接 AtCoder:https://agc014.contest.atcoder.jp/tasks/agc014_e 洛谷:https://www.luogu.org/problemnew/sh ...
- unity3D AR涂涂乐制作浅谈
unity3D AR涂涂乐制作浅谈 AR为现在是虚拟现实较为火爆的一个技术,其中有个比较炫酷的就是AR涂涂乐的玩法,这个技术可以把扫描到的图片上的纹理 粘贴到模型上实现为模型上色的功能,但是我们需要怎 ...
- 【bzoj1878】[SDOI2009]HH的项链
考虑非莫队的离线算法.. 若[l,r]中有重复数值很麻烦,考虑取一个数为代表(最左或最右) 1.最左:用BIT,先把所有第一个出现的数扔进去,将询问左端点升序,每次都可能产生历史的无用点,并出现新的“ ...
- 【arc076E】Connected?
Portal -->arc076E Description 给你一个\(R*C\)的矩形,矩形中某些格子的端点上填了\(1\sim n\)这\(n\)个数字,每个数字出现了恰好两遍,现在要将每一 ...
- oracle 数据库记录
/*----------------------------------------------------------------------------*/ 问题1[--------] Selec ...