Linux資源回收筒[改寫rm防止誤刪檔案無法恢複] - wklken的筆記 - 部落格頻道 - CSDN.NET
Linux資源回收筒[改寫rm防止誤刪檔案無法恢複] 分類: 04-Linux 2011-10-23 19:32 2275人閱讀 評論(1) 收藏 舉報linux指令碼google百度
rm -rf 慎用
命令敲得多了,常在河邊走,難免會濕鞋
昨天,一個手誤,敲錯了命令,把原本想要留的檔案夾給rm -rf掉了
幾天心血全木有了,靠,死的心都有了
經百度,google以及嘗試無果,哎,這個以後再研究怎麼找回吧
幾點教訓:
1.rm 特別是rm -rf之前,小心,三思,或者直接將命令改寫掉
2.做好備份,有便捷的備份指令碼
3.做好定時備份,有個前輩搞定時指令碼,每天定時自個執行,即使刪錯了也不會那麼悲催
首先,搞個資源回收筒
在~下 .bashrc或者.bash_profile加入
[python] view plaincopyprint?
- mkdir -p ~/.trash
- alias rm=trash
- alias r=trash
- alias rl='ls ~/.trash'
- alias ur=undelfile
- undelfile()
- {
- mv -i ~/.trash/$@ ./
- }
- trash()
- {
- mv $@ ~/.trash/
- }
mkdir -p ~/.trashalias rm=trash alias r=trash alias rl='ls ~/.trash'alias ur=undelfileundelfile(){ mv -i ~/.trash/$@ ./}trash(){ mv $@ ~/.trash/}
這是執行
rm 就相當於執行mv了
註:此時已經木有 rm -rf了
刪除的檔案會在.trash中出現
可以恢複回去
ur filename
這就帶來一個問題,如何刪除資源回收筒裡的東西,這是後rm在這裡是木有用的
在剛才.bashrc下繼續加函數
[python] view plaincopyprint?
- cleartrash()
- {
- read -p "clear sure?[n]" confirm
- [ $confirm == 'y' ] || [ $confirm == 'Y' ] && /usr/bin/rm -rf ~/.trash/*
- }
cleartrash(){ read -p "clear sure?[n]" confirm [ $confirm == 'y' ] || [ $confirm == 'Y' ] && /usr/bin/rm -rf ~/.trash/*}
$. .bashrc
然後,如果想清空資源回收筒的話
$cleartrash就行了
備份指令碼正在搞
包括打包壓縮快速備份指令碼和午夜定時備份指令碼
linux下刪除檔案修複,目前還木有學會,哎
血的教訓,防範未然