링크 ux 셸 에서 if else 및 크 고 작 으 며 논리 적 표현 식 소개
예 를 들 어 문자열 을 비교 하고 파일 의 존재 여부 와 읽 을 수 있 는 지 여 부 를 판단 하 는 등 보통 '[]' 로 조건 테스트 를 표시 합 니 다.주의: 이곳 의 빈 칸 은 매우 중요 합 니 다.네모 난 괄호 의 빈 칸 을 확보 해 야 한다.필 자 는 빈 칸 이 부족 하거나 위치 가 맞지 않 아 귀중 한 시간 을 낭비 한 적 이 있다.if ....; then....elif ....; then... else... fi [- f "somefile"]: 파일 여 부 를 판단 합 니 다 [- x "/bin/ls"]:/bin/ls 가 존재 하고 실행 가능 한 권한 이 있 는 지 판단 합 니 다 [- n "$var"]: $var 변수 가 값 이 있 는 지 판단 합 니 다 ["$a"= "$b"]: $a 와 $b 가 같은 지 판단 합 니 다. - r file 사용 자 는 진짜 - w file 사용자 로 읽 을 수 있 습 니 다. 진짜 - x file 사용 자 는 진짜 - f file 파일 을 정규 파일 로 실행 할 수 있 습 니 다. 진짜 - d file 파일 을 디 렉 터 리 로 진짜 - c file 파일 을 문자 로 특수 파일 을 진짜 - b file 문 서 를 블록 으로 특수 파일 을 만 들 수 있 습 니 다.진짜 - s file 파일 크기 가 0 이 아 닐 때 는 진짜 - t file 입 니 다. 파일 설명자 (기본 값 1) 가 지정 한 장치 가 터미널 일 때 는 진짜 입 니 다.
조건 부 선택 을 포함 하 는 셸 스 크 립 트 는 변 수 를 포함 하지 않 는 작업 에 대해 간단 한 셸 스 크 립 트 를 수행 할 수 있 습 니 다.그러나 일부 의사 결정 임 무 를 수행 할 때 는 if/then 의 조건 판단 이 필요 하 다.셸 스 크 립 트 프로 그래 밍 은 비교 연산, 파일 존재 여부 판단 등 을 포함 하여 이러한 연산 을 지원 합 니 다.기본 적 인 if 조건 명령 옵션 은 다음 과 같 습 니 다. - eq ― 두 매개 변수 가 같 습 니까?"filename"]) - d - 디 렉 터 리 에 거의 모든 판단 이 존재 하 는 지 확인 합 니 다. 이 비교 연산 자 를 사용 하여 이 루어 집 니 다. 스 크 립 트 에 서 는 - f 명령 옵션 을 사용 하여 파일 을 실행 하기 전에 존재 하 는 지 확인 합 니 다.
여러분 의 이 해 를 편리 하 게 하기 위해 두 가지 예 를 들 어 보 겠 습 니 다.
1. 파일 존재 여부 판단
#!/bin/sh
# 判断文件是否存在
# link:www.jb51.net
# date:2013/2/27
YACCESS=`date -d yesterday +%Y%m%d`
FILE="access_$YACCESS.log.tgz"
cd /data/nginx/logs
if [ -f "$FILE" ];then
echo "OK"
else
echo "error $FILE" > error.log
mail -s "$FILE backup fail" [email protected] <error.log
fi
#!/bin/sh
# 清除相关文件,并按时间段记录日志
# link:www.jb51.net
# date:2013/2/27
#
DIR=/data/img_cache
DAY=`date +"%Y-%m-%d %H:%M"`
NUM=`ls $DIR |wc -l`
DIRNAME=`ls $DIR| grep leveldb | head -n 1 | awk '{print $NF}'`
if [[ $NUM -gt 3 ]];then
rm -rf $DIR/$DIRNAME
echo "---------$DAY----($DIR)-----------------------" >> /tmp/img_cache.log
echo "$DIRNAME Deleted successful" >> /tmp/img_cache.log
fi
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
용감한 바로 가기 및 우분투 응용 프로그램안녕하세요 여러분, 이 기사에서는 모든 사이트에서 pwa를 생성하고 실행기 응용 프로그램으로 추가하는 방법을 설명하고 싶습니다. 일부 웹사이트는 PWA로 설치를 허용하지 않지만 유사한 애플리케이션을 원합니다. 1. ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.