亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

一次慘痛的教訓后,向各位shell高手求一個Linux mv命令的同名攔截函數謝謝哈~

一次慘痛的教訓后,向各位shell高手求一個Linux mv命令的同名攔截函數謝謝哈~

函數式編程 2019-09-19 22:10:43
環境:操作系統:CentOS7.6;shell:zsh5.0.2晚上搬磚到凌晨2點多時,一時糊涂,竟然莫名其妙地在shell命令行中敲下了如下讓我后悔莫及的命令:mv/*/www/wwwroot從而將系統根目錄下面的/bin、/etc、/sbin、/usr、/var、/root、/home等目錄移動到了/www/wwwroot目錄下,于是導致很多命令都無法正常執行。整個人都懵了的情況之下,手忙腳亂中又關閉了連線中的shell終端會話窗口,于是再也連不上服務器了。由于根本連不上服務器,之后找云服務商幫忙也表示愛莫能助,只能重裝系統。這次教訓過于慘痛,痛定思痛之余,為了以后避免類似事件,想編寫一個攔截mv命令的同名函數,當發現mv后面輸入的是/*或/bin、/etc、/sbin、/usr、/var、/root、/home時,echo一個警告信息出來,然后退出執行。但我發現在條件表達式中無法匹配到參數“/*”中的星號*,因為星號*在作為參數輸入之前已被展開,因此實際上輸入的參數是星號*展開后的值。由于在下水平有限,這里請教一下各位shell高手,能否根據上述要求,編寫一個攔截mv命令的同名函數。誠摯感謝!
查看完整描述

2 回答

?
喵喵時光機

TA貢獻1846條經驗 獲得超7個贊

你需要的不是一個安全的mv,而是一個健壯的備份恢復系統即使你現在實現了一個安全的mv,那還有安全的rm和安全的cp甚至安全的vim,事實上,即使你有一個百分百安全的操作系統,云服務商也有可能會丟掉你的數據。所以異地備份+一個快速部署恢復,才是比較可靠的選擇
                            
查看完整回答
反對 回復 2019-09-19
  • 2 回答
  • 0 關注
  • 371 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號