真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

LinuxShell誤刪除根目錄怎么解決

這篇文章主要介紹“Linux Shell誤刪除根目錄怎么解決”,在日常操作中,相信很多人在Linux Shell誤刪除根目錄怎么解決問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”Linux Shell誤刪除根目錄怎么解決”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!

我們提供的服務(wù)有:網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、漳縣ssl等。為上1000+企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的漳縣網(wǎng)站制作公司

1、變量為空導(dǎo)致誤刪文件

base_path=/usr/sbin tmp_file=`cmd_invalid` # rm -rf $base_path/$tmp_file

這種情況下如果 cmd 執(zhí)行出錯(cuò)或者返回為空,后果將是災(zāi)難性的,那如何防范呢?

(1)利用 shell 的變量擴(kuò)展功能,如果變量為空賦給默認(rèn)值或者拋出異常退出腳本:

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} ]] && echo 1 1

(3)如果變量未定義還可以開啟 set 選項(xiàng):

# cat a.sh set -u b= echo $b echo $a echo 1 # bash a.sh a.sh: line 4: a: unbound variable

2、路徑含有空格導(dǎo)致誤刪文件

史上最經(jīng)典的要數(shù)下面這個(gè)bumblebee項(xiàng)目了,這個(gè)項(xiàng)目本來(lái)不出名,不過(guò),程序在其安裝腳本install.sh里的一個(gè)bug讓這個(gè)項(xiàng)目一下子成了全世界最矚目的項(xiàng)目。

Linux Shell誤刪除根目錄怎么解決

那我們?cè)撊绾畏婪哆@種問(wèn)題呢?

(1)良好的編程習(xí)慣:變量加引號(hào)防止擴(kuò)展

path="/usr/local /sbin"  # rm -rf $path  rm -rf "$path"

(2)對(duì)變量進(jìn)行語(yǔ)義檢查

比如檢測(cè)是否含有空格等特殊字符,不通用,不推薦這么做

3、目錄或文件含有特殊字符導(dǎo)致誤刪文件

Linux Shell誤刪除根目錄怎么解決

Linux Shell誤刪除根目錄怎么解決

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 ~

那我們?cè)撊绾畏婪哆@種問(wèn)題呢?

(1)良好的編程習(xí)慣:變量加引號(hào)防止擴(kuò)展

rm -rf "~"

(2)如果不確定,刪除之前 echo 或 find 一下,看變量被擴(kuò)展成啥了

echo rm -rf "~"  rm -rf ~  echo rm -rf ~  rm -rf /home/work

4、cd 切換目錄失敗,導(dǎo)致文件被誤刪

cd ooxx_path_not_exsit  rm -rf *.exe

恭喜這種情況下你的當(dāng)前目錄下匹配文件都會(huì)被誤刪,那我們?cè)撊绾畏婪哆@種問(wèn)題呢?

(1)使用邏輯短路操作

cd path && rm -rf *.exe

(2)檢測(cè) path 是否存在

[[ -d ~ ]] && echo 1  1

5、***解決方案

不要使用 root 操作系統(tǒng)資源,這樣至少不會(huì)刪除系統(tǒng)文件。

6、在登錄 shell 下使用友好的提示符

友好的命令提示符能時(shí)刻提醒操作者當(dāng)前在哪個(gè)路徑下,避免錯(cuò)誤的路徑下操作文件。

Linux Shell誤刪除根目錄怎么解決

Linux Shell誤刪除根目錄怎么解決

到此,關(guān)于“Linux Shell誤刪除根目錄怎么解決”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!


文章題目:LinuxShell誤刪除根目錄怎么解決
鏈接地址:http://weahome.cn/article/gcepgj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部