三、Shell脚本高级编程实战第三部

保养好自己的发动机:身体的和心里的
身体健康:打打球,跑跑步
心里健康:多和大家接触,保持家人、朋友的良好关系
一、$*和$@的区别
   $*:获取shell的所有参数,将所有的参数视为单个字符串。
   $@ :获取shell的所有参数,将所有的参数视为单个字符串,即单个字体

linux 下set 和eval的使用小案例:
 runlevel=$(set -- $(runlevel); eval "echo \$$#" );其中 eval表示二次扫描
推荐:http://blog.sina.com.cn/s/blog_4d2877090102v3cv.html
    $$  当前shell脚本的进程号,优雅的杀除为:kill -USR2 `$$`,某个脚本同时只能运行一个进程的时候,可以用这么命令把前面的一个杀除
二、shift命令:shift命令是移动位置参数的命令,向前移动一位
三、bash内置变量命令
      就是bash内容的命令,就是在linux下没有命令的位置文件,是在bash内置的,通过例如man cd 进行查看,如下

 

 四、变量子串的常用操作(了解)

   ${#string}   返回变量的长度

   ${string:position}    从position之后开始提取

   ${string:positon:length}  从position之后开始提取,提取多少

五、计算

    (())、let 、expr、bc、 $[]

    1.bc可以计算浮点数;2.(())效率最高;3.expr 判断数字是整数和判断文件名 4.bc本身就是一个计算器 

 六、shell变量的输入

   除了直接赋值和传参,还可以read从标准输入,内置变量

    read [参数][变量名]:-p提示信息  -t 超时时间

   read -p == echo -n

posted @ 2019-09-28 20:35  小熊尤里  阅读(491)  评论(0编辑  收藏  举报