我的编程空间,编程开发者的网络收藏夹
学习永远不晚

linux shell 中判断文件、目录是否存在的方法

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

linux shell 中判断文件、目录是否存在的方法

本文主要介绍了linux shell 中判断文件、目录是否存在的方法,分享给大家

-e filename 如果 filename存在,则为真
-d filename 如果 filenaINvlnKuwAme为目录,则为真
-f filename 如果 filename为常规文件,则为真
-L filename 如果 filename为符号链接,则为真
-r filename 如果 filename可读,则为真
-w filename 如果 filename可写,则为真
-x filename 如果 filename可执行,则为真
-s filename 如果文件长度不为0,则为真
-h filename 如果文件是软链接,则为真

常用例子

如果存在某文件,则删除


if [ -f trials ]; then rm ${result_path}trials; fi

如果没有文件夹,则创建


if [ ! -d $result_name ];then
   mkdir -p $result_name
fi

shell命令判断文件或文件夹是否存在,先直接看实例:


#!/bin/sh

#判断文件存在,判断是否为文件夹等
testPath="/Volumes/MacBookProHD/Mr.Wen/08 shell命令"
testFile="/Volumes/MacBookProHD/Mr.Wen/08 shell命令/fileWen"

#判断文件夹是否存在 -d
if [[ ! -d "$testPath" ]]; then
 echo "文件夹不存在"
else
 echo "文件夹存在"
fi

#判断文件夹是否存在,并且具有可执行权限
if [[ ! -x "$testFile" ]]; then
 echo "文件不存在并且没有可执行权限"
else
 echo "文件存在并有可执行权限"
fi

#判断文件是否存在
if [[ ! -f "$testFile" ]]; then
 echo "文件不存在"
else
 echo "文件存在"
fi

在shell命令脚本编写当中,会遇到各种对文件的判断,除了以上常用的判断,还有其他的可以使用,如下:

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.

shell 判断文件内容是否改变

判断文件内容是否改变:

1)md5值判断

2)diff 判断


#添加日志时间戳
function fn_showlog()
{
  local curtime;
  curtime=`date +"%Y%m%d-%H:%M:%S"`
  echo "$curtime ------ $1";
}
#判断文件内容是否一致
function diff_file(){
  for file in `ls $1`
  do 
    if [ ! -f "$2$file" ];then
      fn_showlog "存在新增文件:$2$file"
      return 0
    else
      diff $file $2$file
      if [ $? -ne 0 ];then
        fn_showlog "文件内容发生变化:$file"
        return 0
      fi
    fi
  done
  return 1
}


diff_file "python*Ip" "/home/admin/tools/"
if [ $? -eq 0 ];then
  fn_showlog "内容发生改变......"
else 
  fn_showlog "内容未发生改变,退出脚本!"
  exit 0
fi

到此这篇关于linux shell 中判断文件、目录是否存在的方法的文章就介绍到这了,更多相关linux shell判断文件存在内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

linux shell 中判断文件、目录是否存在的方法

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

linux shell 中判断文件、目录是否存在的方法

本文主要介绍了linux shell 中判断文件、目录是否存在的方法,分享给大家 -e filename 如果 filename存在,则为真 -d filename 如果 filenaINvlnKuwAme为目录,则为真 -f filena
2022-06-04

shell中怎么判断文件目录是否存在

这期内容当中小编将会给大家带来有关shell中怎么判断文件目录是否存在,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。核心代码#!/bin/sh myPath="/var/log/httpd/" myFil
2023-06-09

java判断文件目录是否存在

java中的isDirectory()是检查一个对象是否是文件夹。返回值是boolean类型的。如果是则返回true,否则返回false。调用方法为:对象.isDirectory() 无需指定参数。 (推荐学习:java课程)
java判断文件目录是否存在
2021-06-20

linux shell如何判断文件是否存在

这篇文章主要讲解了“linux shell如何判断文件是否存在”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“linux shell如何判断文件是否存在”吧!在linux shell中,可以利
2023-06-21

怎么在linux中素shell 判断文件是否存在

这期内容当中小编将会给大家带来有关怎么在linux中素shell 判断文件是否存在,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。如果存在某文件,则删除if [ -f trials ]; then rm $
2023-06-09

Linux用if判断目录是否存在实例方法

Linux如何使用if判断目录是否存在 方法如下: 1、脚本中使用if判断目录是否存在的方法#! /bin/bash if [ -d "c" ];thenecho "目录c存在"elseecho "目录不存在" fi2、简便写法#! /bi
2022-06-03

shell脚本判断文件是否存在

这篇文章主要介绍“shell脚本判断文件是否存在”,在日常操作中,相信很多人在shell脚本判断文件是否存在问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”shell脚本判断文件是否存在”的疑惑有所帮助!接下来
2023-06-09

java判断目录是否存在的方法介绍

java判断目录是否存在的方法:(推荐:java视频教程) public void checkDirExists(File file) { if (fi
java判断目录是否存在的方法介绍
2018-01-19

java判断目录是否存在的方法是什么

在Java中,判断目录是否存在的方法是使用`File`类的`exists()`方法。具体操作如下:import java.io.File;public class CheckDirectory {public static void mai
2023-05-13

java判断文件目录是否存在(附代码)

java判断文件目录是否存在:(推荐:java视频教程) public void checkDirExists(File file) { if (
java判断文件目录是否存在(附代码)
2018-08-29

Linux下如何判断文件夹或者目录是否存在

这篇文章主要为大家展示了“Linux下如何判断文件夹或者目录是否存在”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux下如何判断文件夹或者目录是否存在”这篇文章吧。tat系列函数stat函
2023-06-27

shell判断文件,目录是否存在或者具有权限的代码

#!/bin/sh myPath="/var/log/httpd/" myFile="/var /log/httpd/access.log" #这里的-x 参数判断$myPath是否存在并且是否具有可执行权限 if [ ! -x "$myP
2022-06-04

linux怎么判断文件是否存在

在Linux中,可以使用`-f`选项来判断文件是否存在。这个选项用于判断一个路径是否是一个普通文件,如果是则返回真,否则返回假。示例代码如下:```shellif [ -f 文件路径 ]; thenecho "文件存在"elseecho "
2023-08-09

shell脚本怎样判断文件是否存在

目录shell脚本判断文件是否存在shell脚本之文件是否存在、权限校验判断目录是否存在判断文件是否存在判断目录/文件是否存在判断文件权限判断文件是否属于当前用户判断文件是否与当前用户相同用户组比较文件之间是否为新建复合条件判断文件总结sh
2023-06-07

判断文件是否存在的shell脚本代码

#!/bin/sh# 判断文件是否存在# link:www.lsjlt.com# date:2013/2/28 myPath="/var/log/httpd/"myFile="/var /log/httpd/access.log" # 这里
2022-06-04

Linux Shell中判断进程是否存在的代码

1 利用pgrep 匹配名字 if test $( pgrep -f $1 | wc -l ) -eq 0 then echo "进程不存在" else echo "存在进程" fi 以下是补充内容: 当前系统中的进程: apple@ub
2022-06-04

Linux Shell中怎么判断进程是否存在

本篇内容介绍了“Linux Shell中怎么判断进程是否存在”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1 利用pgrep 匹配名字 代码
2023-06-09

bash判断文件或文件夹是否存在的shell代码

核心代码#shell判断文件夹是否存在#如果文件夹不存在,创建文件夹 if [ ! -d "/myfolder" ]; thenmkdir /myfolder fi#shell判断文件,目录是否存在或者具有权限folder="/var/ww
2022-06-04

java中判断文件文件夹是否存在的方法(附代码)

1、判断文件夹是否存在,不存在则创建:(java相关视频教程推荐:java视频教程)File folder = new File("d:\test1\test2");if (!folder.exists() && !folder.isDirectory())
java中判断文件文件夹是否存在的方法(附代码)
2021-12-20

编程热搜

目录