技术解析

如何安全的删除软连接?
0
2021-06-17 17:47:58
idczone

如何安全的删除软连接? 一不小心就加了个 /


rm -rf /

强烈建议不要发 rm -rf / 这样的东西。很容易误导通过搜索引擎过来的新手。我刚刚开始用 Linux 的时候有一次垃圾箱删不掉,看到一个论坛里有这样的命名,结果用了以后把作业都删掉了。

删软链接别加-r 就没事,最多报错

1 楼这种回复不好笑,也很不负责任。

root 权限了,不小心并不是理由。

看上面几楼好像是没看懂题目把,删除软连接后面+/ 会删除源文件 如果 tab 补全 默认会加 /

一方面是操作的时候仔细一些,确保输入的指令无误再执行;另一方面可以借助一些工具来确保可以恢复误操作,比如 trash-cli 这种工具可以使用 trash 指令来将文件放入回收站。

unlink

ln --help

apt instal trash-cli
alias rm=trash

1#恶意回复

unlink

那么问题来了,把一个低级错误像段子一样广为传播,到底是有利于新手避开错误,还是造成更多的人亦步亦趋掉进同样的坑里?

你这是诋毁我哈,冷笑话不好笑就算了。好歹有点常识的也不会听风就是雨吧?

在别人看来你这就是恶意回复,哪里是冷笑话

呵呵,这种回复在 linux 吧是要封禁几天的

原来开过这种玩笑,但现在不会了,不要用自己的眼光去定义新手;
新手往往会不假思索的去执行,对数据还是保持敬畏之心。

好歹加个 doge

我用 debian9 的时候 rm -rf /这个危险命令会提示确认删除的了啊?

unlink: https://man7.org/linux/man-pages/man2/unlink.2.html

1. 不要没事乱加 rf,你要删的又不是目录
2. 标准做法是使用 unlink
3. 为了防止误删建议 alias rm=rm -i
4. 为了误删之后还能恢复请使用 trash-cli (这个太长我一般 alias 到 del )
5. 如果你是像前面说的因为 tab 补全会加上 / 而误操作的花,建议使用 zsh 。zsh 很多细节真的处理得非常好:补全目录时自动添加的 / ,在侦测到你接下来输入的也是 / 或者分号、空格、回车时,就会被自动删掉。

3 楼说得没错呀。
unlink 和 rm 没啥区别吧(我还不知道有个程序叫 unlink ),因为 unlink 不能加 -r ?

既然想安全,就尽量少用 rm 。你可以建一个临时目录,将想要删除的文件,使用 mv 移动到临时目录,定时清理临时目录即可。

rm -f,从未失手

软连接相当于文件,不需要加斜线啊。
换个好点的 shell,不会乱加斜线的那种。
写上解释比光发一个命令更利于新手避开错误。

一楼真没意思,谁没有还是个菜鸟的时候

`fd -type l`
检查一下当前存在的软链再操作就好....

Linux 里 rm 和 unlink 确实没多大区别
有区别的是 macOS,因为 macOS 的文件系统支持目录硬链接(注意不是软链接,且系统中有相关机制确保目录“树”无环),众所周知 rm 和 rmdir 是无法直接删除有文件的目录的,如果要消除一个目录硬链接而不影响其中文件的话必须用 unlink 。
至于软连接,无论在什么平台上都是直接 rm (不加-r )就行

那就看有多少人是先接触段子了
数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服