您的位置:首页 > 运维架构 > Shell

shell 练习

2016-01-29 17:09 274 查看
1.读取文件中一行数据

while read line

do

echo $line

done < test.txt

这种写法不会产生子进程,而如果通过 管道符 | 就会产生子进程,此时改变其中的值是不起作用的

如:

cat test.txt | while read line

do

done

2.字符串连接

s1=$s1$line

3.数字相加

$[$i+1]

4.输出换行

echo -e $s1'\n'$s2 此处 \n 用 双引号 跟 单引号 都可以

5.awk 中调用 shell 变量 使用 "'"$i"'"

cat 1.txt|awk -F ':' '{print $"'"$i"'"}'

6.比较是否为 0

[ $[$i%2] -eq 0 ]

7.shell 中的 `` 和 $() 的区别

反引号中 \\ = \ 需要反转义就需要两个 \\

$() 中 \ = \ ,一个就可以进行反转义

8.shell 中没有 零宽断言 正则表达,需要加上 P(调用 Perl)

grep -oP '(?<=jdbc_ip=)\S+(?=:)' $file

指定-o是因为grep默认是显示匹配的那一行,我们只关心精确匹配的部分而不是整行
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: