Shell脚本编程快速上手

首先看一下shell的几个重要的知识点:


Shell是用户使用Linux的桥梁。
shell是用户和Linux内核之间的接口程序。
Shell:
        命令语言:交互解释和执行用户输入命令
        程序设计语言:编写shell脚本,用于系统管理工作
Shell命令有两种形式:
1、内部命令:内置在其源码中,即存在于内存中,比如cd、echo。
2、外部命令,存在于文件系统中某个目录下的单独的程序,
   例如cp、rm
 
    查看使用命令:
              $ type   command

shell启动时文件初始将运行初始化化自己,具体运行哪个文件取决于该shell是
1、登录shell
2、交互式非登录shell(比如通过命令bash)
3、非交互式shell(用来执行shell脚本)
bash的主要功能如下:
1、命令行编辑功能
2、命令和文件名补全功能
3、命令历史功能
4、命令别名功能
5、提供作业控制功能
6、具有将命令序列定义为功能键的功能
7、灵活的Shell脚本编程
8、用户自定义变量(本地变量)
9、位置变量
10、环境变量
11、预定义变量

shell的变量:
像高级程序设计语言一样,shell也提供声明和使用变量的功能。
定义自己的变量
变量名=变量值
如:MYVAR=hello
注意:变量名和其值总是配对出现

变量名:
   (1)可包含:   “字母”       “数字”       “  _   ”
      (2)以“   字母  ”    或   “   _  ”  开始
      (3)数字开头的变量保留为shell使用

变量值:
可存储任何想要存放的值
注意:值中出现空格,需加双引号

访问变量:
在变量名前加上“$”
$ MYVAR="how are you“
$ echo $MYVAR

清除变量:
   使用unset命令清除变量。
    unset MYVAR
查看所有变量:
    使用set命令查看所有变量。

说明一个变量为只读    
  readonly  变量名(无法用unset清除) 
变量默认都只是当前shell的局部变量,将变量成为公共变量的格式为:
        export   变量名

也可以在给变量赋值的同时使用export命令:
       export 变量名=变量值

**使用export说明的变量,在shell以后运行的所有命令或程序中都可以访问到

常用的环境变量:
HOME:保存注册目录
PATH:保存用冒号分隔的目录路径名
TERM:终端类型(xterm图形终端,linux文本终端)
UID:当前用户的标识符,取值是由数字构成的字符串
PWD:当前工作目录的绝对路径名,该变量的取值随cd命令的使用而变化
PS1:主提示符,“ # ”    “ $ ”
PS2:   辅助提示符,在输入行末尾“\”,输出该提示符
IFS: shell指定的缺省域分隔符(空格 table   :)
LOGNAME:此变量保存登录名
SHELL:保存缺省shell

命令行shell调用的格式:


预定义变量一览表:


重定向操作一览表:


管道操作符:


shell脚本运行:
1.使用Shell命令程序执行脚本程序
$ bash hello.sh
2.使用“.”命令执行脚本程序
$ . hello.sh
3.直接执行具有执行属性的脚本程序
$ ./hello.sh

命令替换:使用命令的输出来替换命令所在位置的内容
使用: `command`  (后引号,在tab键的上面)
MYVAR=`date`
echo   $MYVAR

算术替换:使用算术运算的结果替换算术表达式所在位置的内容
使用:$((expression))
MYVAR=$((1+1))
echo $MYVAR

条件测试:


文件测试:


字符串测试:


数值测试:


逻辑操作符:


混合条件:


流程控制语句:













shell函数的定义:


如果愿意,可在函数名前加上关键字 function,这取决于使用者。

1.函数可以放在同一个文件中作为一段代码,也可以放在只包含函数的单独文件中。
2.所有函数在使用前必须定义。这意味着必须将函数放在脚本开始部分,直至shell解释器首次发现它时,才可以使用。
3.激活一个函数:$ function

调用函数的格式为:
  函数名 param1 param2……
当函数完成处理或希望函数基于某一测试语句返回时,可做两种处理:
1、让函数正常执行到函数末尾,然后返回脚本中调用函数的控制部分。
2、使用return返回脚本中函数调用的下一条语句,可以带返回值。0为无错误,1为有错误。
这是可选的,其格式为:
return :从函数中返回,用最后状态命令决定返回值。
return 0 :无错误返回。
return 1 :有错误返回



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值