fedora:在命令列下刪除檔案到資源回收筒

來源:互聯網
上載者:User

昨天比較犯2, 在命令下使用rm命令時,以為已經進入到要刪除檔案的所在的目錄了,然後使用了rm -v *命令, 然後終端上就顯示刪除的資料,突然停住了, 要確認是否刪除一個唯讀檔案,我想阿, 我那個目錄下應該不會有唯讀檔案吧?再仔細一看,壞啦,提示是否刪除Downloads目錄下的一些檔案(Downloads是~/下的目錄), 我再一看阿,上面刪除的是Documents目錄中的檔案,我的所有的學習工作的文檔都在這個目錄下阿, 完了完了,我當時太大意了,沒有仔細查看是否cd進入到要刪除檔案所在的目錄. 現在可如何是好?
然後我就上網查了查是否有可以進行回複的工具, 網上說的最多的就是使用debugfs工具.
我後我就按網上說的, 先退出目前使用者,然後是ctrl+alt+F2進入終端, 登入root使用者.
使用df -h命令查看我刪除檔案所在是分區是在/dev/sda9上,然後將此分區umount掉
然後利用debugfs命令:debugfs /dev/sda9 --restore-all
但是還是沒有完全恢複,只是恢複了幾個無關緊要的檔案吧.可能是我在刪除後進行過寫操作的原因吧(我刪除後立即建立了Documents目錄)
算了, 不恢複了, 還好實驗室電腦上有一些備份, 雖然不是很全, 也只能這樣了.
然後我重新登入我的賬戶,發現我的Desktop目錄也沒有了,看來剛才是先刪除的Desktop目錄, 導致現在使用者檔案夾下的很多檔案都在案頭上顯示出來了, 這樣看著太彆扭了,該怎麼辦呢?
我上網查了查,發現可以這樣做:
在~目錄下的.config目錄下有一個user-dirs.dirs檔案,進入之後就知道怎麼修改了

XDG_DESKTOP_DIR="$HOME/Desktop"
XDG_DOWNLOAD_DIR="$HOME/Downloads"
XDG_TEMPLATES_DIR="$HOME/Templates"
XDG_PUBLICSHARE_DIR="$HOME/Public"
XDG_DOCUMENTS_DIR="$HOME/Documents"
XDG_MUSIC_DIR="$HOME/Music"
XDG_PICTURES_DIR="$HOME/Pictures"
XDG_VIDEOS_DIR="$HOME/Videos"

在其中添上Desktop目錄然後登出使用者再登入就可以了

為了防止以後再次出現這種誤刪的情況,我得想個辦法把檔案都一律刪除到資源回收筒, 這樣就可以做到萬無一失了.
然後我就到網上尋找方法, 共有三種方法
(1)使用trash-cli:
  這個軟體是在命令列下操作資源回收筒(其目錄是~/.local/share/Trash/files).
  安裝(fedora14中):yum -y install trash-cli
  使用方法:(http://code.google.com/p/trash-cli/)
  To remove move foo in the trash can, use
  $ trash-put foo
  To list all the contents of the trashcan
  $ trash-list
  2007-08-30 12:36:00 /home/andrea/foo
  2007-08-30 12:39:41 /home/andrea/bar
  2007-08-30 12:39:41 /home/andrea/bar2
  2007-08-30 12:39:41 /home/andrea/foo
  Search for a specific file in the trashcan
  $ trash-list | grep foo
  2007-08-30 12:36:00 /home/andrea/foo
  2007-08-30 12:39:41 /home/andrea/foo
  To restore a trashed file
  $ trash-restore
   0 2007-08-30 12:36:00 /home/andrea/foo
   1 2007-08-30 12:39:41 /home/andrea/bar
   2 2007-08-30 12:39:41 /home/andrea/bar2
   3 2007-08-30 12:39:41 /home/andrea/foo2
   4 2007-08-30 12:39:41 /home/andrea/foo
  What file to restore [0..4]: 4
  $ ls foo
  foo
  To remove all trashed files
  $ trash-empty
  To remove files that have been in the trash more than a given number of days
  $ trash-empty <days>
  For example
  $ date
  Tue Feb 19 20:26:52 CET 2008
  $ trash-list
  2008-02-19 20:11:34 /home/einar/today
  2008-02-18 20:11:34 /home/einar/yesterday
  2008-02-10 20:11:34 /home/einar/last_week
  $ trash-empty 7
  $ trash-list
  2008-02-19 20:11:34 /home/einar/today
  2008-02-18 20:11:34 /home/einar/yesterday
  $ trash-empty 1
  $ trash-list
  2008-02-19 20:11:34 /home/einar/today
  注意:如果要恢複一個檔案, 必須到當時刪除的目錄中去使用trash-restore命令
(2)使用gvfs-trash命令
http://www.unix.com/man-page/OpenSolaris/1/gvfs-trash/
gvfs-trash命令卻可以將檔案送到資源回收筒。
可以使用"gvfs-trash 檔案路徑"將檔案刪除
用alias del=gvfs-trash 可以建立別名.
(3)使用mv命令
alias del='mv -t ~/.local/share/Trash/files --backup=t'

刪除成功的檔案會放入系統資源回收筒中,位置:~/.local/share/Trash/files

這種方發相當於直接把檔案移到資源回收筒了, 但是無法在資源回收筒中使用恢複命令, 只能將其複製或剪下.
我比較喜歡第一種方式.

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.