【问题标题】:Is there any difference between rm -r and rm -R?rm -r 和 rm -R 有什么区别吗?
【发布时间】:2019-10-26 17:09:55
【问题描述】:

标题是描述。
我只是想知道rm -rrm -R 之间有什么区别。

Linux 的 man 描述似乎完全一样(还有一个,--recursive),但是很多人使用 -r 和 -R 就像它们不一样。

所以我不仅想知道它的功能差异,还想知道它的实际(或传统)差异。
谁能告诉我这件事?

【问题讨论】:

    标签: linux bash shell rm


    【解决方案1】:

    手册页提到:

    -r, -R, --recursive
           remove directories and their contents recursively
    

    所以,至少在我的机器上是一样的。

    【讨论】:

      【解决方案2】:

      都一样。

      # rm --help | grep directories.
        -r, -R, --recursive   remove directories and their contents recursively
        By default, rm does not remove directories.  Use the --recursive (-r or -R)
      

      【讨论】:

        【解决方案3】:

        根据 rm 的 OpenGroup / POSIX 规范,-r-R 选项是等效的。

        来源:https://pubs.opengroup.org/onlinepubs/9699919799/utilities/rm.html

        这可能适用于所有现代 UNIX / Linux 变体。

        但并不总是这样:

        添加-R 的原因是为了与其他使用-R 表示递归的命令兼容。 (例如chmod ... 其中-r 表示“删除读取权限”。)

        【讨论】:

          【解决方案4】:

          这两个选项是等价的,默认情况下,rm不删除目录。通过使用 --recursive-r 或 -R)选项也可以删除每个列出的目录及其所有内容。

          【讨论】:

            猜你喜欢
            • 2012-08-12
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-02-07
            • 1970-01-01
            • 2014-06-26
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多