在Unix中使用通配符提高操作效率
,还可以利用!运算符,如[!abc],则表示除a、b、c字符外的任何一个字符等等.这些通配符主要用来实现更加精确的限制.有时候在脚本程序中实现比较严格的控制往往可以提高很好的作用.
三、通配符的使用注意事项. 虽然通过使用通配符,可以提高我们的工作下效率.但是通配符毕竟跟其他字符不同,如果使用的不好的话,是会闯祸的.特别是跟一些删除、重命名等破坏性命令一起使用的时候,更加需要注意通配符使用过程中的一些禁忌.具体的来说,笔者认为在Unix操作系统中使用通配符的禁忌主要包括如下几个方面.
是需要注意空格符的影响.如rm *.txt 与rm * .txt两个命令,他们有什么区别呢?从形式上,一下子看不出有多大的区别.不过仔细一看,我们可以看到第二个命令在通配符*号与扩展名.txt中间多了一个空格.虽然这只是一个很小的差异,但是Unix操作系统在处理的时候,可是会相差很大的.系统工程师或者用户本来想使用rm *.txt命名来删除当前目录下的所有txt文件;但是结果使用了rm * .txt命令(可能是在输入的过程中不小心在通配符*号后面多按了一个空格符).此时操作系统会把当前文件夹下的所有文件都删除.也就是说,如果在通配符*后面有一个空格的话,则其就会忽略空格后面的文本,而表示当前目录下的所有文件.为此在使用*通配符(其他通配符也一样),一定要注意这个空格特殊字符的影响.特别是在使用这些rm命令的时候,最好还是通过交互性的方式执行.如此可以确保操作操作的文件正是用户所想操作的目标文件.从而防止错误的命令导致数据被删除,信息被修改等等难以挽回的损失. 第三需要注意通配符*与通配符/号使用的两个限制.在使用ls * 命令显示当前目录下的所有文件时,其是不会显示以点号开头的文件.这类文件,在Unix操作系统中表示的是隐藏文件.出于保护的目的,默认情况下不会显示这些隐藏文件(以.号开头的文件).如果系统工程师要想显示文件的话,则在通配符前面输入.号.其次这些通配符不能够代表目录中的/ 符号.也就是说,如果使用cd目录加通配符进行路径切换的话,则这个路径中不能够利用通配符来代表/符号.
从以上的分析中可见虽然通配符提高了我们的办公效率里,但是在使用时或多或少仍然有一些限制.作为系统工程师,要把这些限制牢记于心.无论是在编写脚本程序,还是结合其他命令使用时,需要遵守这些使用过程中的禁忌.
|
|||
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |