Verwendung von if in Shell

Wenn

- verschiedene Schreibweisen

  • wenn Befehl; dann Befehl; fi
  • wenn Befehl; dann Befehl; sonst Befehl; fi
  • wenn Befehl; dann Befehl; elif Befehl; dann Befehl; sonst Befehl; fi

-z beurteilt die variable Länge

#!/bin/bash
table="aaa";

# table长度不为0,则打印table
if [ ! -z "$table" ] ;then
	echo $table
fi

-d prüft, ob das Verzeichnis existiert

#!/bin/bash
BACKUP_DIR=/opt/backup;
FILE=/opt/test.log

# 目录不存在,则创建目录,并修改权限;目录存在,打印已存在
if [ ! -d "$BACKUP_DIR" ];then
	mkdir -p $BACKUP_DIR
	chmod -R 777 $BACKUP_DIR
	echo "create $BACKUP_DIR success.">>$FILE
else
	echo "$BACKUP_DIR is exists.">>$FILE
fi 

-f prüft, ob die Datei existiert

#!/bin/bash
# 文件存在,则打印存在( -f 和 [ 之间一定要有空格,末尾 txt 和 ] 也一定要留空格,否则会报错)
if [ -f /opt/test.txt ] ;then
	echo "test.txt is exists";
fi

- Lassen Sie && und || von if weg

#!/bin/bash

# && :表示如果符号&&前面表达式为真,则执行&&符号后面的表达式。
# 如果文件存在就删掉
[ -f /opt/test.java ] && rm /opt/test.java;

# ||:表示如果符号||前面表达式为假,则执行||符号后面的表达式
# 如果文件不存在就退出
[ -f /opt/test.java ] || exit 0; 

-o oder

if [ 表达式1  –o 表达式2 ]

-a mit

if [ 表达式1  –a 表达式2 ]

おすすめ

転載: blog.csdn.net/u011886447/article/details/104948125