Vad*_*kin 2 security path command-line find macos
我在 macOS 上运行以下作为我的 Travis CI 构建的一部分来删除所有非.git目录:
$ if [ "${TRAVIS_OS_NAME}" = "osx" ]; then find /usr/local/Homebrew \! -regex ".+\.git.+" -delete; fi
Run Code Online (Sandbox Code Playgroud)
它给出的输出是:
find: -delete: /usr/local/Homebrew: relative path potentially not safe
Run Code Online (Sandbox Code Playgroud)
为什么我的/usr/local/Homebrew路径被认为是相对路径?
从Unix 和 Linux SE 上的这个答案:
macOS
find基于旧版本的 FreeBSD,find它-delete不会删除作为参数给出的文件。[…]
这在 2013 年的 FreeBSD 中发生了变化,但这种变化显然没有适用于 macOS。
特别是在你的情况下/usr/local/Homebrew作为参数给出find; 因此-delete不能删除这个确切的对象。但是,该消息relative path potentially not safe具有误导性。该链接的消息揭示了引擎盖下会发生什么的一些情况。它还指出:
使用
-mindepth 1或 通过更改目录并将.作为参数传递给find.
| 归档时间: |
|
| 查看次数: |
753 次 |
| 最近记录: |