shell总结(7)

shell小结(7)
//只输出符合规则的字符串
grep -o太重要了!!

AIC2 ftp1204/.dd> echo 'abbc' | grep -o 'b'
b
b


实现功能:

	将text.txt文件中的${内容}中的内容取出来

#!/bin/bash

{
	while read line
	do
		echo $line | grep -o '${.[^${}]*}' | sed -e 's/\${//g' | sed -e 's/}//g'
	done 
} < text.txt

-------------------------------------------------------
数组:
#!/bin/bash

//小括号,空格分开
arr=(1 3 4)

echo $arr 结果等价于:echo ${arr[0]}
echo ${arr[2]}


数组的遍历:
#!/bin/bash
arr=(1 2 3)

for i in ${arr[@]}
do
	echo $i
done
结果为:1
	    2
	    3


#!/bin/bash
arr=(1 2 3)

for i in "${arr[*]}" //引号最好加上
do
        echo $i
done
结果为:1 2 3 


@: at符号  
  与*星号类同。不同之处在于不参照IFS。 
也就是说:@输出的东西都是一行一行的。

-------------------------------------------------------

命令替换 

用命令的输出来替换命令本身。有两种形式$(cmd)和`cmd`,推荐前一种形式,
后一种形式是old-style了。
-------------------------------------------------------

strings命令:用于查看文件,尤其用于java序列化后文件,相当有用。
strings 序列化后的文件

该命令比cat要强大!

-------------------------------------------------------

##如何取得函数的返回值##

#!/bin/bash

//函数的return和exit必须是个数字如00也可以
//这里我们可以利用echo,作为函数的输出
fun()
{
	echo 'abc' 
}

var=`fun`

echo "$?"

echo -e "return vlaue of fun is :$var"

-------------------------------------------------------