返回0则存在,返回1则不存在。
或者
if [ -e $filename ]
空格很关键,注意哦。
判断文件的参数如下,本人自己整理的。
-e 文件存在
-f file 是一个 regular 文件(不是目录或者设备文件)
-s 文件长度不为 0
-d 文件是个目录
-b 文件是个块设备(软盘,cdrom 等等)
-c 文件是个字符设备(键盘,modem,声卡等等)
-p 文件是个管道
-h 文件是个符号链接
-L 文件是个符号链接
-S 文件是个 socket
-t 关联到一个终端设备的文件描述符 这个选项一般都用来检测是否在一个给定脚本中的 stdin[-t0]或[-t1]是一个终端
-r 文件具有读权限(对于用户运行这个 test)
-w 文件具有写权限(对于用户运行这个 test)
-x 文件具有执行权限(对于用户运行这个 test)
Shell中的test命令用于检查某个条件是否成立,它可以进行数值、字符和文件三个方面的测试,那么如何使用shell来判断文件夹是否存在呢?今天小编就就带大家来看看吧。文件夹不存在则创建
文件存在则删除
判断文件夹是否存在
判断文件是否存在
文件比较符
如果身边就有电脑,可以跟着上文一起 *** 作,这样可以更好的理解喔
本文章基于Lenovo品牌、Windows10系统撰写的。
通过git命令统计出了我在某个分支上改动的所有文件列表(文件路径是以和git工作区根目录的相对路径保存的),写入了一个文件all.txt。但是,随即发现,这个列表中的某些文件是我在开发过程中新建,然后有删除的,现在工作区中并不存在这个文件。由于工作区的目录层级比较多,文件也比较多,挨个检查基本是不可能的。于是,写了下面的脚本,放在git工作区的根目录运行,就能够找出那些不存在的文件:
这个脚本中就用到了一个知识点,就是shell如何判断文件存在。下面是一个运行的例子:
然后,通过vim的简单排序,去重命令,可以对这些结果进行筛选和简单处理。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)