美文网首页
条件判断2, 文件测试

条件判断2, 文件测试

作者: liyin_d64b | 来源:发表于2018-10-30 11:39 被阅读0次

    条件判断2

    练习
    1. 给定一个用户,判断UID和GID是否一样
      一样显示为"good guy",否则"bad gay"
    先复习一下删除
    $ ls
    12.txt  bash.sh  bash.sh.save  if.sh  if.sh.save  pra.sh  pra.sh.save  readme.txt  test.sh  var.sh
    $ rm ./*sh
    $ ls
    12.txt  bash.sh.save  if.sh.save  pra.sh.save  readme.txt
    $ rm ./*\.save
    $ ls
    12.txt  readme.txt
    
    用ID命令
    #!/bin/bash
    
    AUID=`id -u yli`
    AGID=`id -g yli`
    if [ $AUID -eq $AGID ]; then
      echo "good guy"
      else
      echo "bad guy"
    fi
    
    $ ./parc2.sh 
    bad guy
    
    不用ID命令, (exit:退出脚本)
    #!/bin/bash
    #/etc/passwd 第3个为UID,第四个为GIU
    username=yli  #没有这个用户就退出
    if ! grep "\b$username" /etc/passwd &> /dev/null; then
      echo "User $username not found"
      exit 1
    fi 
    AUID=`grep "\b$username" /etc/passwd | cut -d: -f3` #注意
    AGID=`grep "\b$username" /etc/passwd | cut -d: -f4` #注意
    if [ $AUID -eq $AGID ]; then
      echo "good guy"
      else
      echo "bad guy"
    fi
    
    $ ./parc2.sh 
    bad guy
    
    shell算数运算

    let

    $ a=3
    $ b=6
    $ let c=$a+$b
    $ echo $c
    9
    

    $[]

    $ c=$[$a+$b]
    $ echo $c
    9
    

    $(())

    $ c=$(($a+$b))
    $ echo $c
    9
    

    expr 注意空格

    $ f=`expr $a + $b`  #加号两边有空格
    $ echo $f
    9
    
    文件测试

    -e file: 是否存在
    -f file: 是否为普通文件
    -d file: 是否为目录
    -r file: 是否可读
    -w file:是否可写
    -x file:是否可执行

    $ nano tx.sh
    
    #!/bin/bash
    #
    filename=/etc/passw
    if [ ! -e $filename ];then
     echo "no $filename"
     exit 1
    fi
    
    $ chmod +x tx.sh 
    $ ./tx.sh 
    no /etc/passw
    
    友情阅读推荐:

    生信技能树公益视频合辑:学习顺序是linux,r,软件安装,geo,小技巧,ngs组学!

    B站链接:https://m.bilibili.com/space/338686099

    YouTube链接:https://m.youtube.com/channel/UC67sImqK7V8tSWHMG8azIVA/playlists

    生信工程师入门最佳指南:https://mp.weixin.qq.com/s/vaX4ttaLIa19MefD86WfUA

    学徒培养:https://mp.weixin.qq.com/s/3jw3_PgZXYd7FomxEMxFmw

    相关文章

      网友评论

          本文标题:条件判断2, 文件测试

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