Bash-Shell编程1

Bash-Shell编程1

1.1Shell特性

  • 文件和命令自动补齐(Tap键)
  • 命令的历史记忆功能
    • !+ 数字键。—使用历史的一个命名,会先显示命令内容,再显示命名结果。
    • !+ 字符串。—找到最近一个以字符串开头的命名运行。
    • !+ $。—上一个命令的最后一个参数。
    • !+ !。— 上一个命令。
    • ^ + R(Ctrl+R)。—搜索历史命令。
  • 别名功能
    • alias查看别名
    • unalias取消别名
  • 管道 | tee
    • 把标准输入作为标准输入
  • shell通配符
    • * 匹配任意多个字符
    • ?匹配任意一个字符
    • [] 匹配括号中任意一个字符
    • ()在子shell中执行
    • {}集合
    • \ 转义符
  • 输出带有颜色的文本
    • echo -e “\e[1;30mThis is a text.”
    • \e[1;30m,用来控制颜色种类30内可以修改
    • echo -e “\e[0m”
    • 在运行上一条后,会让你的名字颜色改变,这条命令可以修改会原来的颜色
    • echo -e “\e[1;30mThis is a text.\e[0m”
    • 两条综合一下,可以只改变里面text文本颜色

1.2Shell变量

  • 自定义变量
    • 定义变量:变量名=变量值 变量名必须以字母或下划线开头,区分大小写
    • 引用变量:$变量名 或 ${变量名}
    • 查看变量:echo $变量名 或 set(所有变量:包括自定义变量和环境变量)
    • 取消变量:unset变量名
    • 作用范围:仅在当前shell中有效
  • 环境变量
    • 定义环境变量:
      • 方法一 export 变量名=变量值
      • 方法二 export 变量名(将自定义变量转换为环境变量)
    • 引用环境变量:$变量名 或 ${变量名}
    • 查看环境变量:echo $变量名 或env
    • 取消环境变量:unset变量名
    • 变量作用范围:在当前shell和子shell有效
  • 位置变量
    • $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10}
  • 预定义变量
    • $0 脚本名
    • $* 所有的参数
    • $@ 所有的参数
    • $# 参数的个数
    • $$ 当前进程的PID
    • $! 上一个后台进程的PID
    • $? 上一个命令的返回值 0表示成功

source命令类似于导包,source 文件.sh,即可加载该文件
也可以在文件开始定义要调用的脚本路径

  • 变量的赋值方式
    • 显示赋值
      • 变量名=变量值
    • read从键盘读入变量值
      • read 变量名
      • read -p “提示信息:” 变量名
      • read -t 5 -p “提示信息:” 变量名
      • read -n 2 变量名
  • 变量的运算
    • 整数运算
      • expr
        • expr 1+2
        • expr $num+$num
      • $(())
        • echo $(($num+$num))
        • echo $((num+num))
      • $[]
        • echo $[1+1]
      • let
        • let num=1+1
        • let num++
    • 小数运算
      • echo “2*3” |bc
      • echo “num=2;6/4” |bc
      • awk ‘BEGIN{print 1/2}’
      • echp “printf 5.0/2” |python
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

七七高7777

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值