【问题标题】:Linux command line 'ls /path/*.*' yields "No such file or directory" [duplicate]Linux命令行'ls /path/*.*'产生“没有这样的文件或目录”[重复]
【发布时间】:2022-01-27 09:06:48
【问题描述】:

我在需要 root 访问权限的目录上执行命令 sudo ls /path.../*.*。该命令返回No such file or directory。但是,运行 sudo rm /path.../ 会给我数百个文件。同样,我不能做sudo rm /path.../xyz*.*,但我可以做sudo rm /path.../exactFileName.abc

如何使用星号一次显示/删除多个文件?

【问题讨论】:

    标签: linux command-line


    【解决方案1】:

    如何使用星号一次显示/删除多个文件 [在需要 root 访问权限的目录上]?

    你可以:

    • 以 root 或有权访问该目录的用户身份执行 shell
      • 以交互方式、su -sudo su -sudo sh 或任何其他方式,然后键入逗号
      • 或非交互式sudo sh -c 'ls /path/*.*',或者sudo sh -c 'ls "$1"/*.*' _ "$path"
    • 或执行另一个命令以获取文件列表并使该命令以足够的权限运行以访问路径
      • sudo find /path -mindepth 1 -maxdepth 1 -name '*.*' -exec ls {} +
      • sudo find /path -mindepth 1 -maxdepth 1 -name '*.*' -print0 | sudo xargs -0 ls

    【讨论】:

    • ls 将没有 root 权限。
    • 是的,所以.. -exec 是。
    猜你喜欢
    • 1970-01-01
    • 2017-02-10
    • 1970-01-01
    • 1970-01-01
    • 2013-03-31
    • 2019-09-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多