首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

一个关于shell if语句的有关问题 急求帮忙

2012-05-21 
一个关于shellif语句的问题急求帮忙我想比较用shell的if语句比较:如果 s1不是以html或者txt结尾的字符串

一个关于shell if语句的问题 急求帮忙
我想比较用shell的if语句比较:如果 s1不是以html或者txt结尾的字符串 那么就替换s1 分别试过 if [ ! "*.html" -o ! "*.txt" ]  
  if [ $s1!="*.html" -o $s1!="*.txt" ] 都出错 ? 请问 用 if [] 能实现吗

[解决办法]
举了三个例子,直接替换,你看看。有很多情况要判断的话是不是考虑用sed,网上很多sed的例子。
我是参考了这篇文章:http://www.cnblogs.com/chengmo/archive/2010/10/02/1841355.html
文章写着支持正则表达式,我没有试出来。

Assembly code
[root@RHEL6A scripts]# more s4.sh s1='/homt/html/txt/abcd/asdf.html'echo $s1s1=${s1/%txt/EEE}s1=${s1/%html/EEE}echo $s1s1='/homt/html/txt/abcd/asdf.txt'echo $s1s1=${s1/%txt/EEE}s1=${s1/%html/EEE}echo $s1s1='/homt/html/txt/abcd/asdf.abc'echo $s1s1=${s1/%txt/EEE}s1=${s1/%html/EEE}echo $s1[root@RHEL6A scripts]# ./s4.sh /homt/html/txt/abcd/asdf.html/homt/html/txt/abcd/asdf.EEE/homt/html/txt/abcd/asdf.txt/homt/html/txt/abcd/asdf.EEE/homt/html/txt/abcd/asdf.abc/homt/html/txt/abcd/asdf.abc[root@RHEL6A scripts]#
[解决办法]
C/C++ code
#!/bin/bashecho $1 | awk '/.*\.html/{print}';
[解决办法]
探讨
C/C++ code

#!/bin/bash

echo $1 | awk '/.*\.html/{print}';

[解决办法]
探讨

引用:
C/C++ code

#!/bin/bash

echo $1 | awk '/.*\.html/{print}';

楼主说html或者txt结尾,这个可以同时判断两种情况吗?我的虚拟机关了就不启动来试了,回帖直接问一下

[解决办法]
探讨

引用:
C/C++ code

#!/bin/bash

echo $1 | awk '/.*\.html/{print}';

楼主说html或者txt结尾,这个可以同时判断两种情况吗?我的虚拟机关了就不启动来试了,回帖直接问一下

[解决办法]
这论坛没编辑功能吗?我去.


VB.NET code
s2=${s1##*.}[[ $s2 != "txt" && $s2 != "html" ]] && s1=string
[解决办法]
改下,加个结尾符"$":
echo $1 | awk '/.*\.(html|txt)$/{print}';

探讨
引用:

引用:
C/C++ code

#!/bin/bash

echo $1 | awk '/.*\.html/{print}';

楼主说html或者txt结尾,这个可以同时判断两种情况吗?我的虚拟机关了就不启动来试了,回帖直接问一下


C/C++ code
#!/bin/bash
……

热点排行