+"> +" />
shell 中的特殊符号解释

shell 中的特殊符号解释

ID:17910685

大小:114.50 KB

页数:20页

时间:2018-09-09

shell 中的特殊符号解释_第1页
shell 中的特殊符号解释_第2页
shell 中的特殊符号解释_第3页
shell 中的特殊符号解释_第4页
shell 中的特殊符号解释_第5页
资源描述:

《shell 中的特殊符号解释》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、在shell中常用的特殊符号罗列如下:#;;;.,/'string'

2、!$${}$?$$$*"string"***?:^$#$@`command`{}[][[]]()(())

3、

4、&&{xx,yy,zz,...}~~+~-&<...>+-%===!=输出/输入重导向>>><<<:>&>2&>2<>>&>&2#井号(comments)这几乎是个满场都有的符号,除了先前已经提过的"第一行"#!/bin/bash井号也常出现在一行的开头,或者位于完整指令之后,这类情况表示符号后面的是注解文字,不会被执行。#Thi

5、slineiscomments.echo"a=$a"#a=0由于这个特性,当临时不想执行某行指令时,只需在该行开头加上#就行了。这常用在撰写过程中。#echo"a=$a"#a=0如果被用在指令中,或者引号双引号括住的话,或者在倒斜线的后面,那他就变成一般符号,不具上述的特殊功能。~帐户的home目录~~~~~~算是个常见的符号,代表使用者的home目录:cd~;也可以直接在符号后加上某帐户的名称:cd~user或者当成是路径的一部份:~/bin;~+当前的工作目录,这个符号代表当前的工作目录,她和内建指令pwd

6、的作用是相同的。#echo~+/var/log~-上次的工作目录,这个符号代表上次的工作目录。#echo~-/etc/httpd/logs;分号(Commandseparator)在shell中,担任"连续指令"功能的符号就是"分号"。譬如以下的例子:cd~/backup;mkdirstartup;cp~/.*startup/.;;连续分号(Terminator)专用在case的选项,担任Terminator的角色。case"$fop"inhelp)echo"Usage:Command-help-version

7、filename";;version)echo"version0.1";;esac.逗号(dot)在shell中,使用者应该都清楚,一个dot代表当前目录,两个dot代表上层目录。CDPATH=.:~:/home:/home/web:/var:/usr/local在上行CDPATH的设定中,等号后的dot代表的就是当前目录的意思。如果档案名称以dot开头,该档案就属特殊档案,用ls指令必须加上-a选项才会显示。除此之外,在regularexpression中,一个dot代表匹配一个字元。'string'单引号(

8、singlequote)被单引号用括住的内容,将被视为单一字串。在引号内的代表变数的$符号,没有作用,也就是说,他被视为一般符号处理,防止任何变量替换。heyyou=homeecho'$heyyou'#Weget$heyyou"string"双引号(doublequote)被双引号用括住的内容,将被视为单一字串。它防止通配符扩展,但允许变量扩展。这点与单引数的处理方式不同。heyyou=homeecho"$heyyou"#Wegethome`command`倒引号(backticks)在前面的单双引号,括住的是

9、字串,但如果该字串是一列命令列,会怎样?答案是不会执行。要处理这种情况,我们得用倒单引号来做。fdv=`date+%F`echo"Today$fdv"在倒引号内的date+%F会被视为指令,执行的结果会带入fdv变数中。,逗点(comma)这个符号常运用在运算当中当做"区隔"用途。如下例#!/bin/bashlet"t1=((a=5+3,b=7-1,c=15/3))"echo"t1=$t1,a=$a,b=$b"/斜线(forwardslash)在路径表示时,代表目录。cd/etc/rc.dcd../..cd/通

10、常单一的/代表root根目录的意思;在四则运算中,代表除法的符号。文章出处:http://www.diybl.com/course/3_program/shell/shelljs/2008614/125554.htmllet"num1=((a=10/2,b=25/5))"倒斜线()在交互模式下的escape字元,有几个作用;放在指令前,有取消aliases的作用;放在特殊符号前,则该特殊符号的作用消失;放在指令的最末端,表示指令连接下一行。#typermrmisaliasedto`rm-i'#rm./*.l

11、og上例,我在rm指令前加上escape字元,作用是暂时取消别名的功能,将rm指令还原。#bkdir=/home#echo"Backupdir,$bkdir=$bkdir"Backupdir,$bkdir=/home上例echo内的$bkdir,escape将$变数的功能取消了,因此,会输出$bkdir,而第二个$bkdir则会输出变数的内容/home。

12、管道(pipeline)p

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。