关于bash角本:这样匹配字符串,怎么会匹配失败呢
--------------------------------------------------------------------------------想用“.*”来匹配./ 或者 ../
if [ "$1" = “.*” ];then ##given path like ./ or ../
想用"$i"="*.EXE;*" -o "$i"="*.OBJ;*" -o "$i"="*.MAP;*" -o "$i"="*.LIS;*" -o "$i"="MAKEFILE*" 来匹配类似的:q.EXE;11 hello.OBJ;84 su.LIS;89 这样的文件名
if [ "$i"="*.EXE;*" -o "$i"="*.OBJ;*" -o "$i"="*.MAP;*" -o "$i"="*.LIS;*" -o "$i"="MAKEFILE*" ] ; then ##Delete file like that kind .
if [ "$i"="*.EXE\;*" -o "$i"="*.OBJ\;*" -o "$i"="*.MAP\;*" -o "$i"="*.LIS\;*"
-o "$i"="MAKEFILE*" ] ; then ##Delete file like that kind .
唉,哪怕能匹配上含有;号的文件名也好呀
elif [ "$i"="*\;*" ];then
## file has unstandard name,rename it to confirm the rule
以上匹配均失败,查了半天的资料还是没有找到原因,哪位高手指点一下吧
另附源程序:myScript.sh(.rar) 正则表达式和shell变量扩展是有很大区别的,我看了你的脚本,应该就是这方面的问题。你可以尝试用shell的字符扩展来达到你的目的,只要能够解决问题就可以了嘛。 :twisted:
页:
[1]