zoukankan      html  css  js  c++  java
  • shell bash使用,包括判断文件或文件夹是否存在举例

    Linux shell编程——if条件判断

    if [ condition ] ;then //一定要注意[] 與裡面的內容要有空格隔开 例如 if [(空格)${a} -eq 3(空格)]; then
       command
    elif
      command
    fi
    shell脚本接收输入时,判断输入个数 用#计算
    if [ $# != 1 ] ; then
      echo "Usage: ./run.sh normal or quick"
      exit
    fi
    获取对应的输入值 用$n
    style=$1

    
    

    比較,
    字符串变量表达式
    If [ $a = $b ] 如果string1等于string2 字符串允许使用赋值号做等号
    if [ $string1 != $string2 ] 如果string1不等于string2
    if [ -n $string ] 如果string 非空(非0),返回0(true)
    if [ -z $string ] 如果string 为空
    if [ $sting ] 如果string 非空,返回0 (和-n类似)

    
    

    文件表达式
    if [ -f file ] 如果文件存在
    if [ -d ... ] 如果目录存在
    if [ -s file ] 如果文件存在且非空
    if [ -r file ] 如果文件存在且可读
    if [ -w file ] 如果文件存在且可写
    if [ -x file ] 如果文件存在且可执行
    举例:
    folder="log"
    if [ ! -d "${folder}" ]; then
      mkdir ${folder}
    fi

    列出文件,并获取文件的内容 ls命令
    for file_name in `ls folder/test*`; do
      echo "test" ${file_name}
      ./${file_name}
      echo "test done" ${file_name}
    done


    整数变量表达式
    if [ int1 -eq int2 ] 如果int1等于int2
    if [ int1 -ne int2 ] 如果不等于
    if [ int1 -ge int2 ] 如果>=
    if [ int1 -gt int2 ] 如果>
    if [ int1 -le int2 ] 如果<=
    if [ int1 -lt int2 ] 如果<

    
    

    for循环
    var=(1 3 4) 或者var=(ab cd)
    for i in "${var[@]}"; do
      echo "do_${i}_test"
      ./do_${i}_test.sh
    done;



    shell bash判断文件或文件夹是否存在
    1, #如果文件夹不存在,创建文件夹 folder="log" if [ ! -d "${folder}" ]; then mkdir ${folder} fi 2、判断文件是否存在 file="/var/www/log.txt" # -f 参数判断 $file 是否存在 if [ ! -f "$file" ]; then touch "$file" fi、 3、# -n 判断一个变量是否有值 if [ ! -n "$var" ]; then echo "$var is empty" exit 0 f 4# 判断两个变量是否相等 if [ "$var1" = "$var2" ]; then echo '$var1 eq $var2' else echo '$var1 not eq $var2' fi
  • 相关阅读:
    Leetcode 171. Excel Sheet Column Number
    Leetcode 206 Reverse Linked List
    Leetcode 147. Insertion Sort List
    小明一家人过桥
    Leetcode 125. Valid Palindrome
    Leetcode 237. Delete Node in a Linked List
    Leetcode 167 Two Sum II
    张老师的生日
    Leetcode 27. Remove Element
    Leetcode 283. Move Zeroes
  • 原文地址:https://www.cnblogs.com/hansjorn/p/4885909.html
Copyright © 2011-2022 走看看