zoukankan      html  css  js  c++  java
  • Linux Shell 编程学习笔记

    1:Shell Script中if语句的条件部分要以分号来分隔

    2:要注意条件测试部分中的空格。在方括号的两侧都有空格

    3:echo "Hi, ${a}s" 单引号中的变量不会进行变量替换操作。

    4:[ -f "$file" ] 判断$file是否是一个文件

    5:[ $a -lt 3 ] 判断$a的值是否小于3,同样-gt和-le分别表示大于或小于等于

    6:[ -x "$file" ] 判断$file是否存在且有可执行权限,同样-r测试文件可读性

    7:[ -n "$a" ] 判断变量$a是否有值,测试空串用-z

    8:[ "$a" = "$b" ] 判断$a和$b的取值是否相等

    9:[ cond1 -a cond2 ] 判断cond1和cond2是否同时成立,-o表示cond1和cond2有一成立


    说明:$#表示包括$0在内的命令行参数的个数。在Shell中,脚本名称本身是$0,剩下的依次是$0、$1、$2…、${10}、${11},等等。$*表示整个参数列表,不包括$0,也就是说不包括文件名的参数列表。

    注意:一定要切记filelist=后边的那个引号不是单引号,而是tab键上边的那个键,或者说是1左边的那个键

    filelist=`ls /home/work`
    for file in $filelist
    do 
    echo $file
    done
     

    实例:shell遍历目录下所有文件 displayfile.sh

    #!/bin/sh
    cd $1
    echo "The Catelog:$1"
    files=`ls -a`
    m=0
    n=0
    for f in $files
    do
     if [ -d "$f" ]; then
      m=`expr $m + 1`
     else
      n=`expr $n + 1`
      echo "$f"
     fi
    done
    echo -e "The Catelog Number is $m"
    echo -e "The File Number is $n"
    运行:./displayfile.sh   /home/work

    实例:Linux shell脚本判断当前是否为root用户

    whoami(显示当前用户的用户名)

    if [ `whoami` = "root" ];then
     echo "root用户!"
    else
     echo "非root用户!"
    fi

    id -u (显示当前用户的uid)

    if [ `id -u` -eq 0 ];then
     echo "root用户!"
    else
     echo "非root用户!"
    fi

  • 相关阅读:
    asp 中response.write
    英语学习的几个概念
    javascript学习(一)
    什么是教学大纲?
    桌面快速启动栏里的“显示桌面”没有的解决办法
    gridview的编辑功能为什么不能用?
    asp中添加数据的两种方法(access数据库)
    CSS入门
    从全国教育科学研究“十一五”规划(教育信息技术)看教育技术的研究趋势
    软件工程
  • 原文地址:https://www.cnblogs.com/hubcarl/p/3334008.html
Copyright © 2011-2022 走看看