• shell 基本语法


    一 什么是shell脚本

    将OS命令堆积到可执行的文件里,由上至下的顺序执行文本里的OS命令 就是脚本了.
      再加上些智能(条件/流控)控制,就变成了智能化脚本了.

    二 变量

    part1 为何要有变量
    程序的运行就是一些列状态的变量->用变量值的变化去表示
    
    part2 变量命名规则
    以字母或下划线开头,剩下的部分可以是:字母、数字、下划线.
    最好遵循下述规范:
    1.以字母开头
    2.使用中划线或者下划线做单词的连接
    3.同类型的用数字区分
    4.对于文件最好加上拓展名
    例如: sql_bak.tar.gz,log_bak.tar.bz2
    
    part3 系统变量
    set 和 env区别
    set:显示所有变量
    env:环境变量
    
    part4 变量赋值
    VARNAME=VALUE
    echo $VARNAME
    删除变量 unset VARNAME
    
    part5 常用系统变量
    PATH
    PWD
    LANG
    HOME
    HISTSIZE
    PS1
    IFS
    域分隔符 是空格,换行,TAB键的合集
    
    part6 全局变量与局部变量
    [root@MiWiFi-R3-srv ~]# gender='male' #在爹这个位置定义一个局部变量gender
    [root@MiWiFi-R3-srv ~]# export money=1000 #在爹这个位置定义一个全局变量money
    [root@MiWiFi-R3-srv ~]#
    [root@MiWiFi-R3-srv ~]#
    [root@MiWiFi-R3-srv ~]# bash #切换到子bash
    [root@MiWiFi-R3-srv ~]# echo $gender #在儿子这里看它爹的局部变量gender,结果为空->看不到
    [root@MiWiFi-R3-srv ~]# echo $money #在儿子这里看它爹的全局变量money,可以看到
    1000
    [root@MiWiFi-R3-srv ~]#
    [root@MiWiFi-R3-srv ~]# export hobby='piao' #在儿子这里定义一个全局变量hobby
    [root@MiWiFi-R3-srv ~]# exit #退出,进入爹的bash环境
    exit
    [root@MiWiFi-R3-srv ~]# echo $hobby #爹是看不到儿子的export的,儿子的儿子可以看到
    [root@MiWiFi-R3-srv ~]#
    
    part6 定义变量名的边界
    [root@MiWiFi-R3-srv ~]# rest_mem=20
    [root@MiWiFi-R3-srv ~]# echo ${rest_mem}%
    20%
    
    part 7 数据类型
    bash中的变量无须声明,拿来就用.默认的变量都会是字符类型,还可以有数字类型,普通的脚本,这两种类型够用了
    
  • 相关阅读:
    吴裕雄--天生自然JAVA图形界面编程学习笔记:单选按钮JRadioButton
    (001)springboot中测试的基础知识以及接口和Controller的测试
    (029)Spring Boot之监测与度量
    (028)Spring Boot之日志处理
    (027)Spring Boot之自定义starter
    (026)Spring Boot之aop
    (025)Spring Boot之JdbcTemplate与Transactional事务处理
    (024)Spring Boot之配置数据源
    (023)Spring Boot之修改内嵌tomcat的3种方式
    (022)Spring Boot之异常处理的两种方式
  • 原文地址:https://www.cnblogs.com/xiaolang666/p/13994615.html
Copyright © 2020-2023  润新知