linux shell环境减号”-”的用途
来源:互联网 发布:约瑟夫环 c语言 数组 编辑:程序博客网 时间:2024/05/02 06:09
转自:http://www.wallcopper.com/linux/588.html
在shell环境下常常用到 “-” 符号,有些用途大家都耳熟能详,可有些乍一看可能还反应不过来。这篇文章写的算是比较全的了,拿过来分享下。
连字符:年轻人称之为dash,年长者称之为minus,英文名称hyphen(连字符),minus sign(减号),或虚线
减号”-”就是代表标准输出/标准输入, 视命令而定. “-”代替stdin和stdout的用法,stdin就是标准输入,stdout就是标准。
1,为应用程序指定参数。
如ps -aux,tar -zxf test.tar
2.一个减号和两个减号
一个减号后面跟的参数必须是单字符参数,可以多个参数写在同一个减号后面。
例如:tar -xvf ×××
两个减号后面跟的参数必须是多字符参数,一个“–”只能跟一个参数。
例如:tar –version
3 表示上一级工作目录。如cd -
cd -
4 普通用户切换到root
su -相当于su – root
5、通过ssh传送文本
cat id_rsa.pub |ssh -p322 root@172.10.1.105 ‘cat – >> ~/.ssh/authorized_keys’
6、表示标准输出流。如tar -cvf – /home | tar -xvf -
tar -cvf – /home 把/home压缩后,打印在stdout上
| 管道,即前一命令的输出为后一命令输入
tar -xvf - 从stdin读取内容,并在当前目录解压
复制的例子
tar cf – access.log |tar xf – -C /opt
7、纯粹是演示 ‘-’
grep -xvf a b 可以写成
cat a | grep -xvf – b
8、
脚本中可以这样在crontab里添加一个任务
{ crontab -l; echo “* * * * * /bin/date >> /tmp/log” ; } | crontab -
9、在文件头添加一行,也可以这样玩
cat – file <<<“line num 1″
10、只取一列并与另一文件做diff
awk ‘{ print $1 }’ a | diff – b
11、例子, 在当前我要打包1个文件夹 /var/log/ 到当前目录下,并用zip压缩,
那么我们可以分步执行
#tar -cvf log.tar /var/log/
#zip -r log.tar.zip log.tar
#rm -rf log.tar
写成一条语句就是
tar -cvf log.tar /var/log/ && zip -r log.tar.zip log.tar && rm -rf log.tar
那么我们可以发现第一条语句的输出(log.tar) 就是第二条语句的输入
这种情况下我们可以用 “-” 来取代这个输出输入
直接执行如下语句就ok了
tar -cvf – /var/log | zip -r log.zip -
意思就是 第一条语句不再输入到1个具体文件,而输出到stdout中, 而作为第二条件的标准输入(stdin), 而stdin 和 stdout都可以用“-”来取代。
这样的话就不会有中间文件生成了~
- linux shell环境减号”-”的用途
- BASH Shell中减号的用途!
- Linux中关于减号 ‘-’ 的用途
- 减号 - 的用途
- 管道命令中减号-的用途
- shell 减号
- linux复习笔记之bash shell (5) 关于减号-的作用
- shell中冒号结合等号, 加号, 减号的使用小结
- Linux参数一个减号"-"与两个减号"--"
- shell中括号的用途
- shell 冒号减号[转]
- linux 关于减号 - 代替stdin 和stdout 的用法
- linux 下如何删除 开头是减号的文件名
- linux 下如何删除 开头是减号的文件名
- linux冒号的用途
- linux 冒号的用途
- linux 冒号:的用途
- shell 编程:冒号 后面跟 等号,加号,减号,问号的意义
- 微探之filter
- adb shell am start -W卡住
- Javascript keyCode键盘键码值表
- Linked List Cycle II
- [Django]第一篇:windows下Django的安装
- linux shell环境减号”-”的用途
- 史上最全: svn与git的对比(一):git和svn的安装
- 改变GitHub 远程地址
- hdu 1232畅路工程(并查集)
- 编程乐趣:身份证号码验证的方法
- UVa 10302 - Summation of Polynomials
- Ajax使用JSON数据格式
- Reorder List
- jdk1.5的新特性有哪些