[转帖]Shell 判断文件或文件夹是否存在(不存在则创建)

shell,判断,文件,文件夹,是否,存在,创建 · 浏览次数 : 0

小编点评

**目录** 1. 文件夹不存在创建文件夹 2. 判断文件夹是否存在 3. 判断文件是否存在 4. 常用的文件比较符

正文

目录

1. 文件夹不存在创建文件夹

2. 判断文件夹是否存在

3. 判断文件是否存在

4. 常用的文件比较符


1. 文件夹不存在创建文件夹

  1. if [ ! -d "/data/" ];then
  2. mkdir /data
  3. else
  4. echo "文件夹已经存在"
  5. fi

2. 判断文件夹是否存在

  1. if [ -d "/data/" ];then
  2. echo "文件夹存在"
  3. else
  4. echo "文件夹不存在"
  5. fi

3. 判断文件是否存在

  1. if [ -f "/data/filename" ];then
  2. echo "文件存在"
  3. else
  4. echo "文件不存在"
  5. fi

4. 常用的文件比较符

  1. -e 判断对象是否存在
  2. -d 判断对象是否存在,并且为目录
  3. -f 判断对象是否存在,并且为常规文件
  4. -L 判断对象是否存在,并且为符号链接
  5. -h 判断对象是否存在,并且为软链接
  6. -s 判断对象是否存在,并且长度不为0
  7. -r 判断对象是否存在,并且可读
  8. -w 判断对象是否存在,并且可写
  9. -x 判断对象是否存在,并且可执行
  10. -O 判断对象是否存在,并且属于当前用户
  11. -G 判断对象是否存在,并且属于当前用户组
  12. -nt 判断file1是否比file2新 [ "/data/file1" -nt "/data/file2" ]
  13. -ot 判断file1是否比file2旧 [ "/data/file1" -ot "/data/file2" ]
文章知识点与官方知识档案匹配,可进一步学习相关知识
Java技能树首页概览128243 人正在系统学习中

与[转帖]Shell 判断文件或文件夹是否存在(不存在则创建)相似的内容:

[转帖]Shell 判断文件或文件夹是否存在(不存在则创建)

目录 1. 文件夹不存在创建文件夹 2. 判断文件夹是否存在 3. 判断文件是否存在 4. 常用的文件比较符 1. 文件夹不存在创建文件夹 if [ ! -d "/data/" ];then mkdir /dataelse echo "文件夹已经存在"fi 2. 判断文件夹是否存在 if [ -d

[转帖]整理收藏:shell中的test条件测试

https://zhuanlan.zhihu.com/p/504991399 shell编程中经常会有很多需要逻辑判断的地方,比如一个文件/文件夹是否存在,字符串是否为空等等,而test就具有这样的优良传统,将我们需要的结果通过简单的表达式查询,从而通过状态码$?取值。 1.对文件类型的检测 -e:

[转帖]linux shell中 if else以及大于、小于、等于逻辑表达式介绍

https://www.jb51.net/article/34332.htm 在linux shell编程中,大多数情况下,可以使用测试命令来对条件进行测试,这里简单的介绍下,方便需要的朋友 比如比较字符串、判断文件是否存在及是否可读等,通常用"[]"来表示条件测试。注意:这里的空格很重要。要确保方

[转帖]Shell if 条件判断

Shell 语言中的if条件 一、if的基本语法: if [ command ];then 符合该条件执行的语句 elif [ command ];then 符合该条件执行的语句 else 符合该条件执行的语句 fi 二、文件/文件夹(目录)判断 [ -b FILE ] 如果 FILE 存在且是一个

[转帖]shell脚本实现文本内容比较交互程序

背景介绍 脚本基于Comm命令进行功能封装,考虑到命令执行前需要对文本进行排序,并且在多文件需要比较内容时可能会导致多个文本混乱,因此使用Shell封装成了一个交互式程序,快速对文件内容进行判断和输出想要的内容内容结果。 脚本介绍 文件内容校验(是否一致内容)定制化输出文本(1.仅文本单独出现内容;

[转帖]SHELL—— awk两个特殊模式(BEGIN 和 END)及awk高级应用(条件判断、循环)

一、Awk 的两个特殊模式 BEGIN 和 END,BEGIN 被放置在没有读取任何数据之前,而 END 被放置在所有的数据读取完成以后执行体现如下: BEGIN{}: 读入第一行文本之前执行的语句,一般用来初始化操作 {}: 逐行处理 END{}: 处理完最后以行文本后执行,一般用来处理输出结果

[转帖]Shell三剑客之awk

目录 awk简述awk的工作过程awk的工作原理awk的基本格式及其内置变量getline文本内容匹配过滤打印对字段进行处理打印条件判断打印awk的三元表达式与精准筛选用法awk的精准筛选:awk的分隔符用法指定输出的分隔符awk结合数组运用面试题 awk简述 在 Linux/UNIX 系统中,aw

[转帖]总结:shell中的if条件判断

一、if 的基本语法 if [ command ];then xxxelif [ command ];then xxxelse xxxfi 二、常见的一些写法案例 1、if [ "x${var}" = "x" ] 其实就是判断${var}是否为空的意思 2、if [ X"$?" == X"0" ]

[转帖]【shell语法 | 01】基础练习

https://www.cnblogs.com/sunbines/p/14587095.html 目录 利用判断符号[ ] 循环体 正文 回到顶部 利用判断符号[ ] [ str ] : str 字符串存在为真 1 [root@localhost ~]# if [ ]; then echo 'tru

[转帖]shell基础-bash变量-预定义变量

1. 预定义变量 预定义变量说明$?用于判断上一条命令的执行状态。如果上一条命令执行正确,则这个变量的值是0;如果上一条命令执行错误,则这个变量的值是除0之外的其他数(具体是哪个数,由命令的撰写者决定)。$$当前进程的进程号(PID)。$!在后台运行的最后一个进程的进程号(PID)。 示例: [ro