linuxshell脚本中字符串的连接方法

linuxshell脚本中字符串的连接方法

ID:8959668

大小:138.00 KB

页数:5页

时间:2018-04-13

linuxshell脚本中字符串的连接方法_第1页
linuxshell脚本中字符串的连接方法_第2页
linuxshell脚本中字符串的连接方法_第3页
linuxshell脚本中字符串的连接方法_第4页
linuxshell脚本中字符串的连接方法_第5页
资源描述:

《linuxshell脚本中字符串的连接方法》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、LinuxShell脚本中字符串的连接方法如果想要在变量后面添加一个字符,可以用一下方法:$value1=home$value2=${value1}"="echo$value2把要添加的字符串变量添加{},并且需要把$放到外面。这样输出的结果是:home=,也就是说连接成功。又如:[root@localhostsh]#var1=/etc/[root@localhostsh]#var2=yum.repos.d/[root@localhostsh]#var3=${var1}${var2}[root@localhostsh]#echo$var3/etc/yum.

2、repos.d/linux shell通配符(wildcard) 通配符是由shell处理的(不是由所涉及到命令语句处理的,其实我们在shell各个命令中也没有发现有这些通配符介绍),它只会出现在命令的“参数”里(它不用在命令名称里,也不用在操作符上)。当shell在“参数”中遇到了通配符时,shell会将其当作路径或文件名去在磁盘上搜寻可能的匹配:若符合要求的匹配存在,则进行代换(路径扩展);否则就将该通配符作为一个普通字符传递给“命令”,然后再由命令进行处理。总之,通配符实际上就是一种shell实现的路径扩展功能。在通配符被处理后, shell会先完成

3、该命令的重组,然后再继续处理重组后的命令,直至执行该命令。 我们回过头分析上面命令吧:在第2个命令中,*.txt实际shell搜索文件,找到了符合条件的文件,命令会变成:lsa.txtb.txt,实际在执行ls时候传给它的是a.txtb.txt. 而命令3,d*.txt由于当前目录下面没有这样的文件或目录,直接将”d*.txt”作为ls参数,传给了ls.这个时候”*”只是一个普通的 ls参数而已,已经失去了它通配意义。由于找不到文件,所以会出现:无法访问提示!了解了shell通配符,我们现在看下,shell常见通配符有那一些了。shell常见通配符:字符含

4、义实例*匹配0或多个字符a*b a与b之间可以有任意长度的任意字符,也可以一个也没有,如aabcb,axyzb,a012b,ab。?匹配任意一个字符a?b a与b之间必须也只能有一个字符,可以是任意字符,如aab,abb,acb,a0b。[list] 匹配list 中的任意单一字符a[xyz]b  a与b之间必须也只能有一个字符,但只能是x或y或z,如:axb,ayb,azb。[!list] 匹配除list 中的任意单一字符a[!0-9]b a与b之间必须也只能有一个字符,但不能是阿拉伯数字,如axb,aab,a-b。[c1-c2]匹配c1-c2 中的任意

5、单一字符如:[0-9][a-z]a[0-9]b 0与9之间必须也只能有一个字符如a0b,a1b...a9b。{string1,string2,...}匹配sring1或string2(或更多)其一字符串a{abc,xyz,123}b   a与b之间只能是abc或xyz或123这三个字符串之一。 需要说明的是:通配符看起来有点象正则表达式语句,但是它与正则表达式不同的,不能相互混淆。把通配符理解为shell 特殊代号字符就可。而且涉及的只有,*,?[],{}这几种。二、shell元字符(特殊字符Meta) shell 除了有通配符之外,由shell 负责预先

6、先解析后,将处理结果传给命令行之外,shell还有一系列自己的其他特殊字符。字符说明IFS由三者之一组成(我们常用space)。CR由产生。=设定变量。$作变量或运算替换(请不要与 shell prompt搞混了)。>重导向stdout。*<重导向stdin。*

7、命令管线。*&重导向filedescriptor,或将命令置于背境执行。*()将其内的命令置于nestedsubshell执行,或用于运算或命令替换。*{}将其内的命令置于non-namedfunction 中执行,或用在变量替换的界定范围。

8、;在前一个命令结束时,而忽略其返回值,继续执行下一个命令。*&&在前一个命令结束时,若返回值为true,继续执行下一个命令。*

9、

10、在前一个命令结束时,若返回值为false,继续执行下一个命令。*!执行history列表中的命令。*加入”*”都是作用在命令名直接。可以看到shell 元字符,基本是作用在命令上面,用作多命令分割(或者参数分割)。因此看到与通配符有相同的字符,但是实际上作用范围不同。所以不会出现混淆。 以下是manbash得到的英文解析:metacharacter             Acharacterthat,whenunquoted,

11、separateswords. Oneofthefollowing

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

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

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