• 请不要在回答技术问题时复制粘贴 AI 生成的内容
hunterJax
V2EX  ›  程序员

就在刚刚, rm -rf 删软连接的时候后面多加了个/,现在杯具了

  •  
  •   hunterJax · Dec 20, 2019 · 8933 views
    This topic created in 2362 days ago, the information mentioned may be changed or developed.

    一不小心手抖,rm -rf server/ 直接敲了回车。 整个文件夹被删 像这种情况能恢复吗? 有没有什么好的方式避免出现这种错误?

    37 replies    2019-12-21 17:18:23 +08:00
    kokutou
        1
    kokutou  
       Dec 20, 2019 via Android   ❤️ 1
    alias rm to mv
    szuwl
        2
    szuwl  
       Dec 20, 2019 via Android
    @kokutou 狠毒
    KentY
        3
    KentY  
       Dec 20, 2019   ❤️ 6
    1. 你删个连接(file), 为什么要 -r?
    2. 为什么要-f
    3. 你手再抖下, /前加个空格可咋整?
    U7Q5tLAex2FI0o0g
        4
    U7Q5tLAex2FI0o0g  
       Dec 20, 2019
    rm 命令千万不要加 f
    wc951
        5
    wc951  
       Dec 20, 2019 via Android   ❤️ 1
    删的多了就可以跑路了,你这才删个文件夹而已
    superrichman
        6
    superrichman  
       Dec 20, 2019 via iPhone
    装个 trash-cli 替换掉 rm,删东西会到回收站不会直接删除。v 站上有好几个删软链删错文件的小伙伴,不怕。
    MeteorCat
        7
    MeteorCat  
       Dec 20, 2019 via Android
    前阵子我也是这样,现在天天在想办法还原备份
    honjow
        8
    honjow  
       Dec 20, 2019   ❤️ 3
    @KentY 可能对于部分人来说。。rm -rf 就是个整体,打完 rm 就自然而然跟着 -rf 了
    wangkun025
        9
    wangkun025  
       Dec 20, 2019
    从 rm 到跑路
    wysnylc
        10
    wysnylc  
       Dec 20, 2019
    这就是为什幺要用视图化工具的原因,减少误操作
    dinghmcn
        11
    dinghmcn  
       Dec 20, 2019 via Android
    前排售卖🚢票
    KentY
        12
    KentY  
       Dec 20, 2019
    @honjow 还真是有这个可能, 你一说我想起来了, 我有同事就是 ls 后面跟的选项 5,6 个如背口诀一般咔咔就写上了, 我还问他, 这些都什么意思? 他说他也不知道, 反正每次 ls 都这么写, 不管目录有什么.
    KentY
        13
    KentY  
       Dec 20, 2019
    @MeteorCat 推荐你 borg 备份恢复
    jinliming2
        14
    jinliming2  
       Dec 20, 2019 via iPhone
    rm 禁忌 -f。
    除非确定是删文件夹,不然一般 -r 都不要用!
    murmur
        15
    murmur  
       Dec 20, 2019
    这个时候就是该狂吹资源管理器的时候了
    Fraotisc
        16
    Fraotisc  
       Dec 20, 2019 via Android
    装个 safe-rm,功能如其名
    CEBBCAT
        17
    CEBBCAT  
       Dec 20, 2019 via Android
    搭楼请教一下,大家怎么删除.git ?
    billlee
        18
    billlee  
       Dec 20, 2019
    CentOS 默认的 alias rm='rf -i' 是个毒瘤,以前我用 ubuntu 的时候 rm 都不会加 -f, 最近 CentOS 用多了每次 rm 都顺手带上 -rf 了,否则删目录还要一个个文件提示你
    WFMS
        19
    WFMS  
       Dec 20, 2019
    rm -rf server/ 与 rm -rf server 有区别吗 加不加这个 /都删了
    lrvy
        20
    lrvy  
       Dec 20, 2019
    推荐个工具 trash-cli
    rm is an alias for trash
    KentY
        21
    KentY  
       Dec 20, 2019
    @CEBBCAT 为什么要删除.git  你是需要 git archive 吧?
    jz361
        22
    jz361  
       Dec 20, 2019   ❤️ 1
    @WFMS 兄弟,审题。删的是软链
    CEBBCAT
        23
    CEBBCAT  
       Dec 20, 2019 via Android
    @KentY 比如说删除一个由 git 管理的文件夹,-r 时自然会迭代到.git 文件夹下的文件
    KentY
        24
    KentY  
       Dec 20, 2019
    @CEBBCAT ... please read my comment twice
    CatSaysMeow
        25
    CatSaysMeow  
       Dec 20, 2019   ❤️ 1
    我也犯过一次这个错误,所以我的桌面上至今留着一个叫 shabi.jpg 的图片记录那一刻
    internelp
        26
    internelp  
       Dec 20, 2019
    extundelete,这个工具试试,有一定几率恢复,赶紧卸载硬盘。
    cyannnna
        27
    cyannnna  
       Dec 20, 2019
    those situations I suggest you input / inputted sudo rm - rf /* and run away ASAP.

    :)
    cyannnna
        28
    cyannnna  
       Dec 20, 2019
    @murmur 视窗操作统一世界!命令行活该被征服?
    des
        29
    des  
       Dec 20, 2019 via Android   ❤️ 1
    软连接我都是用 unlink 来删,就是怕搞错
    Tink
        30
    Tink  
    PRO
       Dec 21, 2019 via iPhone
    直接就是 root 账户??
    pheyx
        31
    pheyx  
       Dec 21, 2019 via Android
    只有 root 才能误删?
    TonyLiu2ca
        32
    TonyLiu2ca  
       Dec 21, 2019
    如果支持 ACLs,那么添加一个禁止删除的 ACL,在 Mac 上如:
    chmod +a0 "group:everyone deny delete"
    manami
        33
    manami  
       Dec 21, 2019 via Android
    先写文件名再写 rm 命令
    Judoon
        34
    Judoon  
       Dec 21, 2019
    删链接用 unlink 就行了,假如你不知道他是软链还是硬链呢
    crclz
        35
    crclz  
       Dec 21, 2019
    Powershell Core 欢迎您
    FrankHB
        36
    FrankHB  
       Dec 21, 2019
    @kokutou mv 大多数情况下也救不了 /,特别还是 mv 了一半的……
    ArtCell
        37
    ArtCell  
       Dec 21, 2019
    `alias rm="mv -t /tmp"`
    再安装一个 `tmpreaper`
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1223 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 121ms · UTC 17:35 · PVG 01:35 · LAX 10:35 · JFK 13:35
    ♥ Do have faith in what you're doing.