六神丸,预产期怎么算,肺气肿的症状-大蓝社区,共创新环境,争做时代绿化先锋

admin 1周前 ( 06-09 03:33 ) 0条评论
摘要: ☞ 程序员进阶架构师必备资源免费送 ☜来自:xrzs的博客 链接:https://my.oschina.net/leejun2005/blog/793916shell 作为一门 l...


☞ 程序员进依奈化妆品阶架构师必备资源免费送 ☜

来自武道剑尊:xrzs的博客 

链接:

https://my.oschina.n郑雅如et/leejun2005/blog/793916

sh大宋小厨娘ell 作为一门 linux 下运用广泛的体系言语,语法简略,上手简单,可是想要用好,少犯过错,也不是那么简单的一件事,可谓虽是居家游览之良药,但也是杀人灭口之利都阳鳗鱼器~

今日就窥阴器来聊聊 linux 下一个常见的问题:怎样防止误删目录。京典丽园下文会具体的叙述不同的场景下误删目录,以及相应的解决方案。


1、变量为空导致误删文件

base_path=/usr/s乐刷客服电话bin

tmp_file=`cmd_invalid`

# rm -rf $base_path/$tmp_file


这种状况六神丸,预产期怎样算,肺气肿的症状-大蓝社区,共立异环境,争做年代美化前锋下假如 cmd 履行犯错或许回来为空,结果将是灾难性的,那怎样防备呢?

(1)运用 shell 的变量扩展功用,假如变量为空赋给默认值或许抛出反常退出脚本:

echo ${base_path:?var is empty}/${tmp_file:?var 揾啖食is empty}

-bash: tmp_file: var is empty

(2)人肉判别变量是否为空:

[[ ${tmp_file} == 宁丹琳被打"" ]] && echo 1

1[[ -z ${tmp_file} ]] && ech六神丸,预产期怎样算,肺气肿的症状-大蓝社区,共立异环境,争做年代美化前锋o 1      

1


(3)假如变量未定义还能够无双懒医敞开 set 选项

# cat 眼镜蛇11焚烧轿车a.sh

set -u 

b=

echo $b

echo $a

echo 1

# bash a.sh

a.sh: line 4: a: unbound variable

2、途径含有空格导致误删文件

史上最经典的要数下面这个bumblebee项目了,这个项目原本不出名,不过,程序在其装置脚本install.sh里的一个bug让这个项目一会儿成了全世界最注目的项目。六神丸,预产期怎样算,肺气肿的症状-大蓝社区,共立异环境,争做年代美化前锋

那咱们该怎样防备这种问题呢?

(1)杰出的编程习气:变量加引号防止扩展

path="/usr/local /sbin"

# rm -rf $path

rm -rf "$path"

(2)对变量进行语义检查

比方检测是否含有空格等特别字符,不通用,不引荐这么做

3、目录或十八里坡电视剧20集文件含有特别字符导致误删文件

ll 

总用量 8

drwxrwxr-x 2 work work 4096 11月 24 18:57 '~'

-rw-rw-r-- 1 work work   34 11月 24 19:49 a.sh

# rm -rf ~

那咱们该怎样防备这种问题呢?

(1)杰出的编程习气:变量加引号防止扩展

rm -rf "~"

(2段祖连)假如不确定,删去之前 echo 或 find 一下,看变量被扩展成啥了

echo rm -rf "~"

rm -rf ~

echo rm -rf ~&n六神丸,预产期怎样算,肺气肿的症状-大蓝社区,共立异环境,争做年代美化前锋bsp;

 rm -rf /home/wor乔乙桂k

4、cd 切换目录失利,导致文件被误删

cd ooxx_path_not_exsit 

rm -rf *.exe

祝贺这种状况下你的当时目录下匹配文件都会被误删,那咱们该怎样防备这种问题呢?

(1)运用逻辑短路操作

cd path六神丸,预产期怎样算,肺气肿的症状-大蓝社区,共立异环境,争做年代美化前锋 && rm -rf *.exe

(2)检测 path 是否存在

[[ -d ~ ]] && echo 1

1

5、终极解决方案


不要运用 root 操作体系资源,这样至少不会删去体系文件。

6、在登录 shell 下运用友爱的提示符

友爱的命令提示符能时间提示操作者当时在哪个途径下,防止过错的途径下操作文件。


上文到此就完毕了,列举了一些常见的case和解决方案,期望能对我们有所启示。



活动:只需你坚持,我就送书,每人南昌大学办公自动化体系都有!

送什么书?请点击左下角阅览原文检查!


长按辨认以下二维码参加报到↓↓↓巴士眼↓↓


将本号置顶/标星,

不忘报到哦!





本大众号悉数博文已整理成一个目录,请在大众号里回复「m」获取!


引荐阅览慕容多肉:

大众号一周年!

钻进 Linu六神丸,预产期怎样算,肺气肿的症状-大蓝社区,共立异环境,争做年代美化前锋x 内核看个终究 | 文末周年福利

朋友圈长文不折恨之入味叠神器


5T技能资源大放送!包含但不限于:C/C++,Linux,Python,Ja六神丸,预产期怎样算,肺气肿的症状-大蓝社区,共立异环境,争做年代美化前锋va,PHP,人工智能,单片机,树莓派,等等。在大众号内回复「1024」,即可免费获取!!


文章版权及转载声明:

作者:admin本文地址:http://grand-blue.com/articles/1646.html发布于 1周前 ( 06-09 03:33 )
文章转载或复制请以超链接形式并注明出处大蓝社区,共创新环境,争做时代绿化先锋