Posted on 2009-08-27 19:41
Prayer 阅读(7123)
评论(0) 编辑 收藏 引用 所属分类:
Shell
1. 计算字符串长度
echo “$str”|awk ‘{print length($0)}’
expr length “$str”
echo “$str”|wc -c
但是第三种得出的值会多1,可能是把结束符也计算在内了
2. 判断字符串是否为空
if [ "$str" = "" ]
if [ x"$str" = x ]
if [ -z "$str" ]
3. 将字符串作为参数传给awk处理
who | awk ‘/^’”$USER”‘/ { print $2 }’ (1) //将$USER作为参数传给awk,利用了字符串连接的功能;
who | awk ‘$1 == user { print $2 }’ user=”$USER” //标准的方式
另外,还可以用环境变量传递参数给awk;
4. 截取字符串
- date|cut -c5
- date|cut -c5-10
- date|cut -c-5
- date|cut -c5-
date|cut -c5 //取第五个字符
date|cut -c5-10 //取第五~十个字符
date|cut -c-5 //取前五个字符
date|cut -c5- //取第五个以后的字符
5. 将字符串与数字比较
例如,列出当前目录下大于1M的文件
- ls -l|awk '{if($5>1000000) print $0}'
ls -l|awk '{if($5>1000000) print $0}'
6. 查找目录下包含特定字符串的文件
- find . -name "*.php" -exec grep -H "sso" {} \;