zoukankan      html  css  js  c++  java
  • Linux Shell命令总结

    一、变量

    二、引用&命令替换

    三、退出状态&逻辑判断

    四、表达式


    一、变量

    • 本地变量
      • 当前shell拥有 举个例子 $LANG = xxx 再次登录就没了,其他ssh连接也不能共享
      • 生命周期随shell
    • 局部变量
      • 只能local用于函数

    本地局部变量演示:

    • 位置
      • $1,$2,${11}
      • 脚本中使用
      • 函数中使用
      • 传给前面的命令加‘ ’ 如 awk命令。不加单引号传给bash

    位置变量演示:

    位置变量示例1:(脚本中用两个位置 1、2来接受外部的两个参数)

    位置变量示例2:(大括号“{}”括起来)

    位置变量示例3:(函数中使用)

    位置遍历示例4:(传给bash不加 ‘ ’ ,传给前面的命令加‘ ’)

    • 特殊

      • $#:位置参数个数
      • $*:参数列表,双引号引用为一个字符串
      • $@:参数列表,双引号引用为单独的字符串

      • $$:当前shell的PID:接收者
        • $BASHPID:真实
        • 管道 管道也是一个比较特殊的东西。使用管道左右两边会分别开启一个子bash

      • $?:上一个命令退出状态
        • 0:成功
        • other 非0:失败

    • 环境

      • export 环境变量中使用,原理就是将变量导出共享到任何子bash中执行。

      • 导入的父bash变量并非实时共享的

    二、引用&命令替换

    • 引用:

      • 双引号:弱引用,参数扩展
      • 单引号:强引用,不可嵌套
      • 单双引号的区别:

      • 花括号扩展不能被引用

      • 命令执行前删除引用

    • 命令替换:

      • 反引号:`

      • $(ls -l /)

      • 可以嵌套

    三、退出状态&逻辑判断

    • 退出状态

      • echo $? 0表示成功,非0表示失败。可以用在脚本里面进行逻辑判断。
    • 逻辑判断

      • command1 && command2 短路与
      • command1 || command2 短路或

    四、表达式

    • 算术表达式

      • let 算术运算表达式
        • let C=$A+$B
      • $[算术表达式]
        • C =$[$A+$B]
      • $((算术表达式))
        • C=$(($A+$B))
        • C=$((A+B)) 内层$可以省略
        • ((A++)) 当某个值只改变不复制给其他变量,格式为去掉$
      • expr 算术表达式
        • 注意:表达式中各操作数及运算符之间要有空格。而且要使用命令引用
        • C=expr $A + $B
    • help let一定要打开看看里面的各种表达式表示

    • 演示:

    • 条件表达式

      • [ expression ]
      • test expression
      • [[ expression ]]
    • help test 可以判断文件/字符串 >、 < 号的问题,一定要打开查看下

    • 演示:

  • 相关阅读:
    分数拆分
    thinkphp URL规则、URL伪静态、URL路由、URL重写、URL生成(十五)
    iOS_12_tableViewCell的删除更新_红楼梦
    关于0基础磁盘管理(gpt UEFI...)最好的一篇文章(来自gentoo linux)
    HDU 3564 Another LIS splay(水
    jsp表达式
    XML(四)dom4j解析XML
    Android学习笔记(十八)——使用意图筛选器和实现浏览网页(附源代码)
    Oracle企业管理框架
    em grid control网格控制
  • 原文地址:https://www.cnblogs.com/nm666/p/10891162.html
Copyright © 2011-2022 走看看