为了规避这个风险操作,我决定用 trash 替代 rm,这样文件就不会直接被删除,而是进入废纸篓。 安装 trash trash--CLI tool that moves files or folder to the trash 使用 homebrew 安装 trash brew install trash 配置命令行 安装完之后在 .zshrc 或者 .bashrc 添加以下配置,.Trash 是Mac下的废纸篓目录。 alias rm=trash alias r=trash alias rl='ls ~/.Trash' alias ur=undelfile undelfile() { mv -i ~/.Trash
trash和crash的含义 垃圾(trash)是指无用或废弃的东西,可以在计算机中表示回收站中的删除文件或文件夹。当您删除文件时,它通常会被移动到回收站,而不是永久删除,以便您有机会恢复它们。 trash和crash的异同 垃圾(trash)和崩溃(crash)是两个不同的概念,它们之间存在以下区别: 含义: 垃圾(trash):指无用或废弃的东西,在计算机术语中特指回收站中的删除文件或文件夹 作用: 垃圾(trash):用于存放被删除的文件或文件夹,提供了一种恢复机制,以防止意外删除重要文件。 改善和排查问题的方式: 垃圾(trash):可以定期清空回收站,避免过度占用磁盘空间,并了解如何从回收站中恢复误删的文件。 trash 是指 別的程式把 airplay 記憶體寫壞,這個時候程式因 data 被別人寫壞,所以執行起來有問題 crash 是指 airplay 本身程式沒寫好掛掉了 "Trash"一词通常指无用或废弃的东西
立即清除:执行 hdfs dfs -rm 删除文件时: # 文件被移动到回收站(重命名) #删除前文件路径 /user/alice/data.txt #删除后文件路径 /user/alice/.Trash /Current/user/alice/data.txt 保留策略:文件在回收站保留 fs.trash.interval 小时(默认0=关闭回收站),超时自动删除。 > <name>fs.trash.checkpoint.interval</name> <value>30</value> <! 25/07/18 00:58:15 INFO fs.TrashPolicyDefault: Created trash checkpoint: /user/root/.Trash/250718005815 # 从回收站复制回原路径 hdfs dfs -mv \ /user/alice/.Trash/Current/path/to/file.txt \ /path/to/file.txt
hadoop fs -rmr -skipTrash /user/root/.Trash; 或 hdfs dfs -expunge 执行-expunge命令时,回收站不会立即清理,而是先进行一个checkpoint
trash-cli的项目地址 trash-cli 安装 trash-cli的安装很简单 cd /tmp https://github.com/andreafrancia/trash-cli cd trash-cli 123 5月 28 19:38 trash -rwxr-xr-x 1 root root 125 5月 28 19:38 trash-empty -rwxr-xr-x 1 1 root root 127 5月 28 19:38 trash-restore -rwxr-xr-x 1 root root 122 5月 28 19:38 trash-rm 功能说明 trash == trash-put == 删除 trash-empty 清空 trash-list 列出回收站 trash-restore 恢复文件 trash-rm 删除回收站中指定文件 alias log='cd /var/log' 安全删除 alias rm='trash' 列出回收站 alias rl='trash-list' 作者原文 Can I alias rm to trash-put
Better Trash for Mac可以帮助您自动清空垃圾篓。您可以选择何时按不同的时间频率清空。或者,您可以设置垃圾篓的存储限制。 Better Trash for Mac图片Better Trash for Mac软件介绍最好的Mac清理垃圾篓助手Better Trash是macOS上的垃圾篓管理应用程序,旨在帮助您解决无法清空垃圾篓的问题 Better Trash for Mac功能介绍1.你有没有遇到垃圾篓不能清空?强制清空垃圾篓---可以帮助您从垃圾篓中删除锁定的文件或正在使用或其他情况。 Better Trash for Mac更新日志1.修复了从外部磁盘中删除文件的错误。2.添加隐藏应用程序停靠栏图标后显示停靠栏图标的功能。
fs.trash.checkpoint.interval 检查点创建的时间间隔(单位为分钟)。其值应该小于或等于fs.trash.interval。 Trash 启用回收站功能后,使用rm命令从HDFS中删除某些内容时,文件或目录不会立即被清除,它们将被移动到回收站Current目录中(/user/${username}/.Trash/current Trash中的文件在用户可配置的时间延迟后被永久删除。 NameNode删除超过fs.trash.interval的检查点,并为/user/${username}/.Trash/Current创建一个新的检查点。 但是为fs.trash.interval和fs.trash.checkpoint.interval设置合适的值也是非常重要的,以使垃圾回收以你期望的方式运作。
trash-cli 用于移动文件到回收站,同时会记录文件的原地址、删除日期和权限。trash-cli 和 KDE、GNOME、XFCE 使用同一个回收站,你可以在命令行或脚本运行 trash-cli。 # 或者pip install trash-clitrash-cli 提供以下命令:trash-put 把文件或目录移动到回收站trash-empty 清空回收站trash-list 列出回收站文件trash-restore 恢复回收站文件trash-rm 删除回收站文件用法移动文件到回收站:$ trash-put列出回收站文件: 常见问题如何创建顶级 .Trash 目录? 虽然 trash-put 的界面看起来与 rm 兼容,但它们有不同的语法,这些差异会导致一些问题。比如,用 rm 删除目录时需要 -R,trash-put 则不需要。
trash-cli是一个使用 python 开发的软件包,包含 trash-put、restore-trash、trash-list、trash-empty、trash-rm等命令,我们可以通过这写命令 trash-cli的项目地址:trash-cli下载地址 1、下载trash-cli安装包 [root@VM_54_118_centos others]# git clone https://github.com 进入下载目录 [root@VM_54_118_centos others]# cd trash-cli/ [root@VM_54_118_centos trash-cli]# ll total 112 -2.7/trash-restore -> /usr/bin changing mode of /usr/bin/trash-rm to 755 changing mode of /usr/bin/trash-list trash-rm 功能说明: trash-put 将文件或目录移入回收站 trash-empty 清空回收站 trash-list 列出回收站中的文件 trash-restore还原回收站中的文件 trash-rm
TL;DR 安装 trash 命令: brew install trash 然后将下面的命令添加到 ~/.bashrc 或 ~/.zshrc 文件中: alias rm='/usr/local/bin $ cd trash $ make $ cp trash /usr/local/bin/ $ make docs $ cp trash.1 /usr/local/share/man/man1/ 支持放回原处 trash 命令与 -F 参数共同使用时,通过 trash 移动至回收站的文件,可以在回收站中使用“放回原处”功能。 from the OS X command line[4]:trash 工具的作者博客,介绍了 trash 的由来。 参考资料 [1] trash: http://hasseg.org/trash/ [2] trash: https://github.com/ali-rantakari/trash [3] Homebrew
/andreafrancia/trash-cli.git cd trash-cli sudo pip install. 为当前用户安装: git clonehttps://github.com/andreafrancia/trash-cli.gitcd trash-clipip install. : trash-put 把文件或目录移动到回收站 trash-empty 清空回收站 trash-list 列出回收站文件 trash-restore 恢复回收站文件 trash-rm 删除回收站文件 移动文件到回收站: $ trash-put 列出回收站文件: $ trash-list 2008-06-01 步骤: sudo mkdir --parent /.Trash sudo chmod a+rw /.Trash sudo chmod +t /.Trash 我能把 rm 的别名设置为 trash-put
具体操作如下: 1 设置.Trash文件夹 如果需要恢复hdfs中文件,就需要设置.Trash,hadoop的.Trash默认是关闭的。 我们只需要设置该时间即可打开.Trash。 /hadoop/.Trash/Current 3 恢复时只需要将.Trash中文件移动到我们设置的目录即可,例如将.Trash中test1文件移动到/test目录, bin/hadoop fs -mv /user/hadoop/.Trash/Current/test1 /test 4 彻底删除hdfs文件 彻底删除hdfs文件即将.Trash中文件彻底删除,这样才能是否被删除文件所占用的 删除.Trash中文件举例如下: bin/hadoop fs -rm -r /user/hadoop/.Trash/Current/test1
/.Trash/Current/hncscwc [root@nn-1 hadoop]# hdfs dfs -ls /user/root/.Trash/Current/hncscwc Found 1 items :01 /user/root/.Trash/221014160300 drwx------ - root supergroup 0 2022-10-14 16:03 /user/root/.Trash/ /root/.Trash/221014150300/hncscwc -rw-r--r-- 3 root supergroup 4094 2022-10-14 15:00 /user/root/.Trash 15:01 /user/root/.Trash/221014150300 drwx------ - root supergroup 0 2022-10-14 15:01 /user/root/.Trash , as itcontains the trash.
安装trash-cli在Ubuntu系统上,你可以通过以下命令安装trash-cli:sudo apt updatesudo apt install trash-cli使用trash-cli的基本命令 官方文档:https://github.com/andreafrancia/trash-cli/blob/master/README_zh-CN.rst trash-cli 提供以下命令:trash-put 把文件或目录移动到回收站trash-empty 清空回收站trash-list 列出回收站文件trash-restore 恢复回收站文件 trash-rm 删除回收站文件 删除文件或目录: 使用trash-put命令将文件或目录放入垃圾箱。 trash-restore 清空垃圾箱: 使用trash-empty命令清空垃圾箱中的所有内容。
Hadoop里的trash选项默认是关闭的,所以如果要生效,需要提前将trash选项打开,修改conf里的core-site.xml即可。 启用trash的相关配置 # 增加fs.trash参数配置 开启trash(进程不需重启) vi core-site.xml <property> <name>fs.trash.interval </name> <value>1440</value> </property> # fs.trash.interval是回收周期,文件实际上是被移动到trash的这个目录下面,而不是马上被删除掉 默认的单位是分钟,4320分钟=60*24*3,刚好是一天;fs.trash.checkpoint.interval是指垃圾站检查间隔,应该是小于或者等于fs.trash.interval。 .Trash/Current/test.log # 恢复误删除的文件 [hadoop@hadoop ~]$ hdfs dfs -mv /user/hadoop/.Trash/Current/test.log
在hadoop或者hdfs里面,trash数据误删后,还可以找回来。 hadoop里的trash选择默认是关闭的,如果要生效需提前把trash选项打开。 fs.trash.checkpoint.interval</name> <value>60</value> </property> fs.trash.interval是回收周期,文件被移动到 trash里面,不会马上删掉数。 fs.trash.checkpoint.interval是垃圾回收的检查间隔,应该是小于或者等于fs.trash.interval。 hadoop fs -mv /user/xxx/.Trash/Current/tmp/data/test /tmp/data/test 数据恢复了。
一.开启回收站功能参数说明 1、默认值fs.trash.interval=0,0表示禁用回收站;其他值表示设置文件的存活时间。 2、默认值fs.trash.checkpoint.interval=0,检查回收站的间隔时间。如果该值为0,则该值设置和fs.trash.interval的参数值相等。 3、要求fs.trash.checkpoint.interval<=fs.trash.interval。 fs.trash.interval 1 查看回收站 回收站在集群中的路径:/user/local/.Trash/…. trash = New Trash(conf); trash.moveToTrash(path); 恢复回收站数据 [hadoop@hb hadoop-2.7.2]$ hadoop fs -mv
为当前用户安装: git clone https://github.com/andreafrancia/trash-cli.git cd trash-cli pip install . } {card-list-item} 使用方法 trash-put 把文件或目录移动到回收站 trash-empty 清空回收站 trash-list 列出回收站文件 trash-restore 恢复回收站文件 trash-rm 删除回收站文件 移动文件到回收站: $ trash-put 列出回收站文件: $ trash-list open} 步骤: sudo mkdir --parent /.Trash sudo chmod a+rw /.Trash sudo chmod +t /.Trash {/collapse-item} 虽然 trash-put 的界面看起来与 rm 兼容,但它们有不同的语法,这些差异会导致一些问题。比如,用 rm 删除目录时需要 -R,trash-put 则不需要。
mkdir -p ~/.trash //创建一个目录作为回收站,这里使用的是用户家目录下的.trash目录 alias rm=trash //命令别名 rm改变为trash,通过将rm命令别名值trash undelfile() //这个函数的作用是找回回收站下的文件 { mv -i ~/.trash/\$@ ./ } trash() //这个函数是将指定的文件移动到指定的目录下,通过将rm命令别名值 trash来实现把rm改造成删除文件至回收站 { mv $@ ~/.trash/ } cleartrash() //这个函数的作用是清空回收站目录下的所有文件 { read -p "clear trash、undelfile和cleartrash。 trash的作用是移动文件到指定的回收站目录;undelfile的作用是找回回收站目录中的指定文件;cleartrash的作用是清空回收站目录。经rm命令别名为trash来实现rm命令的改造!
比如,起始状态: ysx@localhost:~/trash/ehbio$ ls -ltr total 0 drwxr-xr-x. 2 ysx ehbio 6 Jan 7 10:48 webserver /record.md ysx@localhost:~/trash/ehbio$ ls -ltr total 0 drwxr-xr-x. 2 ysx ehbio 6 Jan 7 10:48 train ysx@localhost:~/trash/ehbio$ cat <<END >>webserver/record.md 2. 一个网站发表于NAR数据库专刊,3个网站正在投稿中。 ysx@localhost:~/trash/ehbio$ cat <<END >>webserver/record.md > 3. ysx@localhost:~/trash/ehbio$ chmod a-w webserver/ ysx@localhost:~/trash/ehbio$ ls -ltr total 0 drwxr-xr-x