Shell脚本判断文件是否存在

Shell脚本判断文件是否存在,第1张

通察山过git命令统计出了我在某个分支上改动的所有文件列表(文件路径是以和git工作区根目录的相对路径保存的),写入了一个文件all.txt。但是,随即发现,这个列表中的某些文件是我在开发过程中新建,然后有删除的,现在工作区中并不存在这个文件。

由于工作腊如区的目录层级比较多,文件也比较多败局中,挨个检查基本是不可能的。于是,写了下面的脚本,放在git工作区的根目录运行,就能够找出那些不存在的文件:

这个脚本中就用到了一个知识点,就是shell如何判断文件存在。下面是一个运行的例子:

然后,通过vim的简单排序,去重命令,可以对这些结果进行筛选和简单处理。

Shell中的test命令用于检查某个条件是否成立,它可以进行数值、字符和文件三个方面的测试,那轮老么如何使用shell来判断文件夹是否存在呢?今天小编就就带大家来看看吧。

文件夹笑誉不存在则创建

文件存在则删除

判断文件夹是否存在

判断文件是否存在

文件比较符

如果身边就有电脑,可以跟着上文一起 *** 作,这样可以更好的理解喔

本文章基碰桐段于Lenovo品牌、Windows10系统撰写的。

举例

#!/bin/sh

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

if [ ! -e "$myFile" ]then

touch "$myFile"

fi

-e和-f的区别是,-f代表常规文件(regular file),-e代表所有任何类型文件

参考如下:

-e filename 如果 filename存在,则为

-d filename 如果 filename为目录,则为真

-f filename 如果 filename为常规文件,则为真

-L filename 如果 filename为符号链接,则为真

-r filename 如果 filename可读,则为真

-w filename 如果 filename可写,则为真

-x filename 如果拆清 filename可执行,则灶谈为真

-s filename 如果文件长度不为旅辩前0,则为真

-h filename 如果文件是软链接,则为真


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12280269.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存