常用的bash shell脚本 一些常用的运维管理方法

源地址http://www.linuxde.net/2013/06/14634.html
1. 单引号和双引号的区别

单引号与双引号的最大不同在于双引号仍然可以引用变量的内容,但单引号内仅是 普通字符 ,不会作变量的引用,直接输出字符窜。请看如下例子:

[root@Linux ~]# name=HaHa 
[root@linux ~]# echo $name 
HaHa 
[root@linux ~]# myname="$name is wow" 
[root@linux ~]# echo $myname 
HaHa is wow 
[root@linux ~]# myname='$name is wow' 
[root@linux ~]# echo $myname 
$name is wow

从上面例子可以看出,使用了单引号的时候,那么$name只是普通字符,直接输出而已!

2. 逐行读取文件

使用for循环来读取文件

for line in `cat file.txt`
do
	echo $line
done

注意:由于使用for来读入文件里的行时,会自动把空格和换行符作为一样分隔符,如果行里有空格的时候,输出的结果会很乱,所以只适用于行连续不能有空格或者换行符的文件

使用while循环读取文件

cat file.txt |while read line
do
echo $line
done

或者:

while read line
do
echo $line
done < file.txt

注意:由于使用while来读入文件里的行时,会整行读入,不会关注行的内容(空格..),所以比for读文件有更好的适用性,推荐使用while循环读取文件




你可能感兴趣的:(shell)