zoukankan      html  css  js  c++  java
  • shell笔记

    #!C:Gitinash
    #a='123';
    #echo "the var is ${a}";

    a='123'
    #设定只读
    #readonly a

    #a=456
    #echo $a

    #unset a 删除变量

    #打印字符串长度
    #echo ${#a};
    #echo $PATH 访问环境变量

    #提取子字符串
    #a='aaaa'
    #echo ${a:1:2}

    #string="alibaba is a great company"
    #echo `expr index "$string" aaa`

    # arr1=(
    # 1
    # 2
    # 3
    # 4
    # )
    #echo ${arr1[1]}

    #打印数组长度
    #echo ${#arr1[@]}

    #打印单个元素的长度
    #echo ${#arr1[1]}

    #获取运行脚本传递的参数
    #echo $1
    #echo $2
    #echo $3

    #传递参数个数
    #echo $#;

    #以一个单字符串显示所有向脚本传递的参数
    #echo $*;

    #脚本运行的当前进程ID号
    #echo $$;

    #后台运行的最后一个进程的ID号
    #echo $!;

    #显示Shell使用的当前选项,与set命令功能相同。
    #echo $-;

    #显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误。
    #echo $?;

    arr1=(
    'a'
    'b'
    'c'
    'd'
    )

    #获取数组中的所有元素
    #echo "${arr1[*]}"
    #echo "${arr1[@]}"

    #获取数组的长度
    #echo "${#arr1[*]}"
    #echo "${#arr1[@]}"

    #原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最常用。
    #expr 是一款表达式计算工具,使用它能完成表达式的求值操作。 这里计算表达式用反引号 英文Esc(下面的键位)


    # a=10
    # b=20

    # #判断数字
    # val=`expr $a + $b`
    # echo "a + b : $val"

    # val=`expr $a - $b`
    # echo "a - b : $val"

    # val=`expr $a * $b`
    # echo "a * b : $val"

    # val=`expr $b / $a`
    # echo "b / a : $val"

    # val=`expr $b % $a`
    # echo "b % a : $val"

    # if [ $a == $b ]
    # then
    # echo "a 等于 b"
    # fi
    # if [ $a != $b ]
    # then
    # echo "a 不等于 b"
    # fi

    #判断字符串
    # if [ $a -eq $b ]
    # then
    # echo "$a -eq $b : a 等于 b"
    # else
    # echo "$a -eq $b: a 不等于 b"
    # fi
    # if [ $a -ne $b ]
    # then
    # echo "$a -ne $b: a 不等于 b"
    # else
    # echo "$a -ne $b : a 等于 b"
    # fi
    # if [ $a -gt $b ]
    # then
    # echo "$a -gt $b: a 大于 b"
    # else
    # echo "$a -gt $b: a 不大于 b"
    # fi
    # if [ $a -lt $b ]
    # then
    # echo "$a -lt $b: a 小于 b"
    # else
    # echo "$a -lt $b: a 不小于 b"
    # fi
    # if [ $a -ge $b ]
    # then
    # echo "$a -ge $b: a 大于或等于 b"
    # else
    # echo "$a -ge $b: a 小于 b"
    # fi
    # if [ $a -le $b ]
    # then
    # echo "$a -le $b: a 小于或等于 b"
    # else
    # echo "$a -le $b: a 大于 b"
    # fi

    #布尔运算符 !非运算 -o或运算 -a与运算

    # aa=10
    # bb=20
    # cc=30

    # if [ $aa < $bb -a $bb < $cc ]
    # then
    # echo "true";
    # else
    # echo 'false';
    # fi

    #获取标准输入行信息
    #read name
    #read aaa
    # echo "$name It is a $aaa"

    #for循环
    #for loop in 1 2 3 4 5
    #do
    # echo "The value is: $loop"
    #done

    #while循环
    # int=1
    # while(( $int<=5 ))
    # do
    # echo $int
    # let int++;
    # done

    # arr=(
    # 1
    # 2
    # 3
    # 4
    # 5
    # );

    # for ((i=1;i<=5;i++))
    # do
    # echo ${arr[$i]}
    # done


    #while (true)
    #do
    # echo 1;
    #done

    # int=1;
    # until ($int -q 19)
    # do
    # echo $int;
    # let int++;
    # done

    # while :
    # do
    # php demo1.php
    # sleep 5
    # done

    #case的语法和C family语言差别很大,它需要一个esac(就是case反过来)作为结束标记,每个case分支用右圆括号,用两个分号表示break。
    # read num
    # case $num in
    # 1) echo 1
    # ;;
    # 2) echo 2
    # ;;
    # 3) echo 3
    # ;;
    # 4) echo 4
    # ;;
    # 5) echo 5
    # ;;
    # *) echo '数字不在范围内'
    # ;;
    # esac
    # aaa() {
    # echo 123;
    # }
    # aaa

    #在Shell中,调用函数时可以向其传递参数。在函数体内部,通过 $n 的形式来获取参数的值,例如,$1表示第一个参数,$2表示第二个参数...


    # funWithParam(){
    # echo "第一个参数为 $1 !"
    # echo "第二个参数为 $2 !"
    # echo "第十个参数为 $10 !"
    # echo "第十个参数为 ${10} !"
    # echo "第十一个参数为 ${11} !"
    # echo "参数总数有 $# 个!"
    # echo "作为一个字符串输出所有参数 $* !"
    # }
    # funWithParam 1 2 3 4 5 6 7 8 9 34 73

    # #注意,$10 不能获取第十个参数,获取第十个参数需要${10}。当n>=10时,需要使用${n}来获取参数。另外,还有几个特殊字符用来处理参数:
    ps aux | grep ps

  • 相关阅读:
    第一节:SpringMVC概述
    SpringMVC【目录】
    Windows 系统快速查看文件MD5
    (error) ERR wrong number of arguments for 'hmset' command
    hive使用遇到的问题 cannot recognize input
    Overleaf支持的部分中文字体预览
    Understanding and Improving Fast Adversarial Training
    Django2实战示例 第十三章 上线
    Django2实战示例 第十二章 创建API
    Django2实战示例 第十一章 渲染和缓存课程内容
  • 原文地址:https://www.cnblogs.com/tudou1223/p/5257627.html
Copyright © 2011-2022 走看看