[转] linux中 参数命令 -- 和 - 的区别
在 Linux 的 shell 中,我们把 - 和 -- 加上一个字符(字符串)叫做命令行参数。
主流的有下面几种风格Unix 风格参数
前面加单破折线 -BSD 风格参数
前面不加破折线GNU 风格参数
前面加双破折线Unix 风格参数
Unix风格的参数
一个减号,然后一个参数就是一个字母。
Unix风格的参数是从贝尔实验室开发的AT&T Unix系统上原有的命令继承下来的。比如
ps -A
ls -l
rm -fr /
git commit -am "xxx"
那么,为什么有的 - 后面跟一个字母,有的跟两个字母呢?
其实很简单,一个字母就是一个参数,两个字母就是两个参数。
最后那个 git -am 其实是 -a -m 两个参数。
一般你可以分开写,也可以合起来写。
GNU风格的参数
GNU 风格就是两个减号 -- 加参数,一般后边的参数是跟上一个单词或短语。
比如
npm install lodash --save
npm install express --save-dev
tsc --init
ps --no-headers
咦?为什么有些双减号和单减号混合了?
其实在这种模式中,双减号后面就是一个参数,单减号在这里就是一个连字符的作用,就是为了把两个单词隔开,为了美观。
为啥不用空格隔开呢,道理大家都懂得。其实 -- 后面仍然是一个参数。
比如 no-headers 的 意思就是不显示header,这是一个参数。
你也可以理解为 -- 后面的单词是单减号 - 字母的全称。比如 ls -a 和 ls --all 意思是一样的。-h 往往对应 --help 。-v(-V) 对应 --version。但是也有一些非主流的例外。
BSD 风格的参数
伯克利软件发行版(Berkeley software distribution,BSD)是加州大学伯克利分校开发的一个Unix版本。
它和AT&TUnix系统有许多细小的不同,这也导致了多年的Unix争论。
说实话,这种我用的不是很多。这种参数和第一种很像,就是不用带 减号 -。比如ps aux
tar cjvf what.tar.bz2 .
其实 aux 是三个参数。cjvf是四个参数(也可以用 UNIX 风格,前面加个单减号)。
所以不熟悉的话就man一下或者--help(这个--help基本上都有的)。一切以具体的程序和文档为准。
来源: https://www.zhihu.com/question/267095526/answer/319488831
[转] linux中 参数命令 -- 和 - 的区别的更多相关文章
- linux中查找命令find、locate、whereis、which、type区别
linux中查找命令find.locate.whereis.which.type区别 1. find Java代码 find是最常见和最强大的查找命令,你可以用它找到任何你想找的文件.与查询数据库(/ ...
- linux中touch命令参数修改文件的时间戳(转)
linux中touch命令参数不常用,一般在使用make的时候可能会用到,用来修改文件时间戳,或者新建一个不存在的文件,以下是linux中touch命令参数的使用方法: touch [-acm][-r ...
- linux 中解析命令行参数(getopt_long用法)
linux 中解析命令行参数(getopt_long用法) http://www.educity.cn/linux/518242.html 详细解析命令行的getopt_long()函数 http:/ ...
- linux中touch命令参数修改文件的时间戳(转载)
转自:http://os.51cto.com/art/200908/144237.htm linux中touch命令参数不常用,一般在使用make的时候可能会用到,用来修改文件时间戳,或者新建一个不存 ...
- Linux中mpstat命令参数详解
Linux中mpstat命令参数详解 mpstat 是 Multiprocessor Statistics的缩写,是实时系统监控工具.其报告与CPU的一些统计信息,这些信息存放在 /proc/stat ...
- Linux中exec命令相关
Linux中exec命令相关 exec和source都属于bash内部命令(builtins commands),在bash下输入man exec或man source可以查看所有的内部命令信息. b ...
- Linux中date命令的各种实用方法--转载
在linux环境中,不管是编程还是其他维护,时间是必不可少的,也经常会用到时间的运算,自己也曾经为时间的各种表示方法和如何修改时间而困惑,熟练运用date命令来表示自己想要表示的时间,肯定可以给自己的 ...
- 13 Basic Cat Command Examples in Linux(转) Linux中cat命令的13中基本用法
Cat (串联) 命令是Linux/Unix开源系统中比较常用的一个命令.我们可以通过Cat命令创建一个或多个文件,查看文件内容,串联文件并将内容输出到终端设备或新的文件当中,这篇文章我们将会以实例的 ...
- linux中grep命令的使用
转载:http://blog.csdn.net/universsky/article/details/8866402 linux中grep命令的使用 grep (global search regul ...
随机推荐
- SAP Cloud for Customer Extensibility的设计与实现
今天的文章来自Jerry的同事,SAP成都研究院C4C开发团队的开发人员徐欢(Xu Boris).徐欢就坐我左手边的位置,因此我工作中但凡遇到C4C的技术问题,一扭头就可以请教他了,非常方便.下图是他 ...
- idea字体模糊
用jdk1.8的jre替换idea的jre64,但是记得在lib里加上jdk的lib中的tools.jar. 如图: 然后 将原来jre64的TOOLS.jar拷贝到替换后的jre的lib目录下,重启 ...
- vuejs里面v-if,v-show和v-for
<div id='root'> <div v-if='show'>helle world</div> <button @click='handleClick' ...
- double类型的小数,四舍五入保留两位小数
import java.math.BigDecimal; public class Kewai{ public static void main(String[] args) { double f = ...
- python模块;opencv安装
http://www.lfd.uci.edu/~gohlke/pythonlibs/ 1. 步骤1. 下载Python2.73, 安装, 并配置Python环境变量:".\Program F ...
- UsbKey开发
http://slf-1983.blog.163.com/blog/static/2990236320121113113955119/
- Centos7之Nginx
1.安装 下载RPM: wget http://nginx.org/download/nginx-1.16.0.tar.gz 解压:tar -zxf nginx-1.16.0.tar.gz 安装: c ...
- Python小项目之五子棋
1.项目简介 在刚刚学习完python套接字的时候做的一个五子棋小游戏,可以在局域网内双人对战,也可以和电脑对战 2.实现思路 局域网对战 对于局域网功能来说,首先建立连接(tcp),然后每次下棋时将 ...
- 《TensorFlow实战》中AlexNet卷积神经网络的训练中
TensorFlow实战中AlexNet卷积神经网络的训练 01 出错 TypeError: as_default() missing 1 required positional argument: ...
- 29.VUE学习之--键盘事件.键盘修饰符的实例讲解
键盘事件 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...