• 解读Linux命令格式(转)


    解读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(报道中的缺陷)
           Please report bugs via https://bugzilla.redhat.com
     
    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(作者)
           Debian Linux http://www.debian.org/
           Mike Frysinger <vapier@gentoo.org>
     
    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
           Report bugs to <bug-coreutils@gnu.org>.
     
    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
           <http://www.gnu.org/licenses/gpl.html>.  There is NO WARRANTY, to the extent permitted by law.
     
    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

  • 相关阅读:
    解决easy ui 1.4datebox控件不能清空的问题
    easy ui 1.4的NumberBox,失去焦点后不能再次输入小数点
    使用easy ui过程中资料(网址)总结
    解决easy ui两次请求服务器的问题
    JQuery EasyUI中datagrid的使用
    java对象和xml相互转换
    mybatisPuls初步了解
    Spring Cloud Alibaba系列
    artemis.http.client1.2 导致springboot日志不输出
    当我们在谈论爬虫时我们在谈论什么(一)
  • 原文地址:https://www.cnblogs.com/zxc2man/p/3543373.html
Copyright © 2020-2023  润新知