大坑记录 - shell脚本删除操作

Posted jwentest

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大坑记录 - shell脚本删除操作相关的知识,希望对你有一定的参考价值。

背景

jenkins执行去执行shell命令,其中引用了一些jenkins的变量,如${WORKSPACE}这种,因为每次执行jenkins比较慢,于是想复制脚本出来想本地调试一下,直接复制了脚本过来执行,结果又这么一句

rm -rf ${WORKSPACE}/*

用root去执行,结果就崩盘了,发现删除了系统文件和目录,当终止的时候,已经来不及了

 

分析

由于${WORKSPACE}不存在,就是空了的,所以命令基本上就是rm -rf /*

然后就爆炸了,哎,只能找运维帮忙修复了的

 

后记

1. 权限控制,尽量不要用root,尤其是删除操作;

2. 删除逻辑加入判断,判断目录是否存在,如下:

#!/bin/bash

pwd
cd  ${WORKSPACE}
pwd

if [ ! ${WORKSPACE}];then
        exit -1;
        echo "${WORKSPACE}不存在"
else
        echo "存在"
fi

 

以上是关于大坑记录 - shell脚本删除操作的主要内容,如果未能解决你的问题,请参考以下文章

常用python日期日志获取内容循环的代码片段

大坑,jenkins 配置publish over ssh bash 插件,远程部署,无法执行shell脚本

代码片段:Shell脚本实现重复执行和多进程

shell脚本使用小记

shell脚本使用小记

Shell脚本实现文件遍历和删除操作