美文网首页
Linux Xshell 基本语法

Linux Xshell 基本语法

作者: 星云春风 | 来源:发表于2020-06-07 09:29 被阅读0次

    Linux基本语法

    1. 编写一个脚本
      vim test.sh
      #!/bin/bash
      #上面的是解释器  还有一种sh解释器  #!/bin/sh  
      A=10
      #定义一个变量
      echo $A
      #输出变量
      
      
      2.执行脚本,三种方式
      1. /bin/bash test.sh
      2. chmod 777 test.sh
       ./test.sh
      3. sh test.sh
      
      3. 查看上一个命令是否是成功的
       echo $?          # 0代表是成功的
      
      4.查看磁盘的使用量
      df -h
      
      5.脚本里获取当前路径、名称以及参数
      #!/bin/bash
      echo "当前的路径是:$PWD"
      echo "当前的路径是:`pwd`"
                                  
      echo "当前shell名称是:$0"
      echo "参数一是:$1"
      echo "参数二是:$2"
      
      #使用的时候可以传参数 sh test.sh 888 999 
      #这时候会把888  999赋值给$1  $2
      
      #!/bin/bash
      
      echo "----------------------------------------"
      age=99
      
      echo age=$age
      echo pwd=$PWD
      
      ######################
      echo "当前shell的脚本名称是:$0"
      echo "参数一是:$1"
      echo "参数二是:$2"
      
      ########################
      echo "是否执行成功:$?"
      echo "外界传递的参数是:$*"
      echo "外界传递参数的数量:$#"
      
      #上面脚本运行的结果:
      sh test02.sh 999 888
      ----------------------------------------
      age=99
      pwd=/root/xiachenhui/studyNdk/study03
      当前shell的脚本名称是:test02.sh
      参数一是:999
      参数二是:888
      是否执行成功:0
      外界传递的参数是:999 888
      外界传递参数的数量:2
      
      
      6. 函数操作
      seq 1 20 会输出1-20的值,利用seq可以进行for循环
      expr 1000 + 100  #这个是加法
      
      
      #!/bin/bash
      
      # 循环遍历
      for i in `seq 1 20`
      do
      #这中间就是类似于括号
              echo "循环遍历的数字是:$i"
      done
      
      
      #累加的功能 必须使用双括号,中间的各种空格需要注意
      a=0
      for((f=0;f<=100;f++))
      do
              a=`expr $f + $a`
      done
      
      echo "累加1到100的值是:$a"
      
      
      7. 查找和压缩文件
      查找所有的.txt文件      find . -name "*.txt"
      把所有的文件打包压缩成all.taz文件 tar czf all.taz *
      
      #!/bin/bash
      
      
      #查找当前目录下的所有.txt文件 进行打包操作
      
      for i in `find ./ -name "*.txt"`
      do
              tar -czf txtAll.tgz $i
      done
      
      
      8. while循环
      #!/bin/bash
      
      #while 循环解释器
      
      i=0
      while((i<=100))
      do
              i=`expr $i + 1`
              echo "遍历i的值是:$i"
      done
      
      
      
      9. 读取文件
      #!/bin/bash
      
      
      #读文件,循环一直等待。。。输入文字,按回车即可
      while read AA
      do
              echo -----------$AA
      done
      ~                                                                                 
      ~       
      
      10. if操作
      #!/bin/bash
      
      NUM1=100
      NUM2=200
      # then 代表出发的点
      if(($NUM1>$NUM2)); then
              echo "OK............"
      else
              echo "NOT OK........"
      #结束
      fi
      
      
      
      #!/bin/bash
      
      #判断目录是否存在,如果不存在就创建,注意空格问题
      
      if [ ! -d `pwd`/chenhuidir ]; then
              mkdir -p `pwd`/chenhuidir
      else
              echo "chenhuidir 目录已经存在....."
      fi
      ~    
      
      
      12. 字符串操作
      #!/bin/bash
      # 字符串
      var1="abcde"
      var2="zzzzzzzzz"
      
      #判断是否相等,只有一个=号
      if [ $var1 = $var2 ];then
              echo "var1等于var2"
      else
              echo "var1不等于var2"
      fi
      
      
      # 字符串是否为空
      if [ $var1 ]
      then
              echo "var1不为空,值是:$var1"
      else
              echo "var1为空"
      fi
         
      
      13. Linux 万物皆文件之重定向
      cat 0< file01.txt  把file01.txt的内容重定向到屏幕文件,0代表shell的界面文件。
      
      14. 函数
      #!/bin/bash
      
      function test01(){
              echo "method test01 run...."
      }
      #调用上面的函数
      test01
      
      #变量操作
      function test02(){
              var1="xiachenhui"
              var2="chenhui"
              echo $var1
              echo $var2
              echo "method test02 run...."
      }
      test02
      
      #给函数传参
      function test03(){
              echo "method test03 run...参数是:`expr $1`"
      }
      test03 666
      
      #给函数传参2
      function test04(){
              echo "method test04 run...参数是:`expr $1`"
              echo $1
      }
      test04 777
      
      

    相关文章

      网友评论

          本文标题:Linux Xshell 基本语法

          本文链接:https://www.haomeiwen.com/subject/wuwqtktx.html