濮阳杆衣贸易有限公司

主頁 > 知識庫 > 判斷文件是否存在的shell腳本代碼

判斷文件是否存在的shell腳本代碼

熱門標簽:江蘇云電銷機器人公司 華鋒e路航港口地圖標注 客服外呼系統怎么樣 百度地圖標注錯了有責任嗎 揭陽智能電話機器人推薦 打電話機器人接我是他的秘書 河南信譽好的不封卡電話外呼系統 地圖標注員都是年輕人 如果做線上地圖標注

實現代碼一、

#!/bin/sh
# 判斷文件是否存在
# link:www.jb51.net
# date:2013/2/28

myPath="/var/log/httpd/"
myFile="/var /log/httpd/access.log"

# 這里的-x 參數判斷$myPath是否存在并且是否具有可執(zhí)行權限
if [ ! -x "$myPath"]; then
 mkdir "$myPath"
fi
# 這里的-d 參數判斷$myPath是否存在
if [ ! -d "$myPath"]; then
 mkdir "$myPath"
fi

# 這里的-f參數判斷$myFile是否存在
if [ ! -f "$myFile" ]; then
 touch "$myFile"
fi
# 其他參數還有-n,-n是判斷一個變量是否是否有值
if [ ! -n "$myVar" ]; then
 echo "$myVar is empty"
 exit 0
fi

# 兩個變量判斷是否相等
if [ "$var1" = "$var2" ]; then
 echo '$var1 eq $var2'
else
 echo '$var1 not eq $var2'
fi

實現代碼二、

#shell判斷文件夾是否存在

#如果文件夾不存在,創(chuàng)建文件夾
if [ ! -d "/myfolder" ]; then
 mkdir /myfolder
fi

#shell判斷文件,目錄是否存在或者具有權限

folder="/var/www/"
file="/var/www/log"

# -x 參數判斷 $folder 是否存在并且是否具有可執(zhí)行權限
if [ ! -x "$folder"]; then
 mkdir "$folder"
fi

# -d 參數判斷 $folder 是否存在
if [ ! -d "$folder"]; then
 mkdir "$folder"
fi

# -f 參數判斷 $file 是否存在
if [ ! -f "$file" ]; then
 touch "$file"
fi

# -n 判斷一個變量是否有值
if [ ! -n "$var" ]; then
 echo "$var is empty"
 exit 0
fi

# 判斷兩個變量是否相等
if [ "$var1" = "$var2" ]; then
 echo '$var1 eq $var2'
else
 echo '$var1 not eq $var2'
fi

-f 和-e的區(qū)別

Conditional Logic on Files

-a file exists.

-b file exists and is a block special file.

-c file exists and is a character special file.

-d file exists and is a directory.

-e file exists (just the same as -a).

-f file exists and is a regular file.

-g file exists and has its setgid(2) bit set.

-G file exists and has the same group ID as this process.

-k file exists and has its sticky bit set.

-L file exists and is a symbolic link.

-n string length is not zero.

-o Named option is set on.

-O file exists and is owned by the user ID of this process.

-p file exists and is a first in, first out (FIFO) special file or

named pipe.

-r file exists and is readable by the current process.

-s file exists and has a size greater than zero.

-S file exists and is a socket.

-t file descriptor number fildes is open and associated with a

terminal device.

-u file exists and has its setuid(2) bit set.

-w file exists and is writable by the current process.

-x file exists and is executable by the current process.

-z string length is zero.

是用 -s 還是用 -f 這個區(qū)別是很大的!

您可能感興趣的文章:
  • Shell腳本創(chuàng)建指定大小文件的測試數據
  • shell按行讀取文件的3種方法
  • Shell中建立與使用臨時性文件的方法詳解

標簽:淘寶邀評 邵陽 馬鞍山 許昌 婁底 金昌 巴彥淖爾 赤峰

巨人網絡通訊聲明:本文標題《判斷文件是否存在的shell腳本代碼》,本文關鍵詞  判斷,文件,是否,存,在的,;如發(fā)現本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《判斷文件是否存在的shell腳本代碼》相關的同類信息!
  • 本頁收集關于判斷文件是否存在的shell腳本代碼的相關信息資訊供網民參考!
  • 推薦文章
    建阳市| 梅河口市| 邢台市| 枣庄市| 石狮市| 马鞍山市| 固镇县| 阿克| 射洪县| 浦城县| 谢通门县| 怀宁县| 小金县| 同江市| 华蓥市| 济源市| 西林县| 灵寿县| 徐汇区| 德江县| 黄龙县| 沈阳市| 松原市| 静安区| 靖宇县| 嘉定区| 肥城市| 安平县| 大邑县| 莱阳市| 鄂尔多斯市| 咸丰县| 望奎县| 吉木萨尔县| 朝阳区| 綦江县| 凌海市| 延寿县| 阜南县| 华安县| 舒兰市|