【问题标题】:Giving a script permission to execute mkdir on its own授予脚本自行执行 mkdir 的权限
【发布时间】:2016-05-02 13:26:14
【问题描述】:

我有一个从 Internet 下载的文件。当我在 osx 终端中运行它时,它所做的其中一项自动化操作是在我的 /usr/local/bin 中创建一个新目录,但这失败了,因为终端说权限被拒绝。如何授予此文件执行 mkdir 命令的权限?我知道如何使用 sudo 授予自己权限,但不知道如何授予此文件自行执行相同操作的权限。

【问题讨论】:

  • 它以什么用户身份运行?大概你 mkdir /usr/local/bin/deleteMe 没有 sudoing - 脚本通常应该以你的用户身份运行,所以它也应该能够写入该目录。
  • 所以我注意到我自己在不使用 sudo 的情况下没有权限访问 /usr/local/bin 中的 mkdir,这可能也是文件无法执行此操作的原因。我如何给自己这个权限?我不必成为超级用户,对吗?我觉得这有点矫枉过正。

标签: macos bash terminal permissions


【解决方案1】:

您可以通过运行sudo chown -R $(whoami) /usr/local/bin/ 授予用户对该文件夹的权限。一旦确定您拥有目录和子目录(ls -l /usr/localls -l /usr/local/bin),您的脚本也应该能够写入这些目录。

作为一般经验法则,sudoing 解决权限错误只会​​让问题变得更糟。修复底层权限需要额外的几分钟,但从长远来看会更好。

【讨论】:

  • 谢谢,成功了。
猜你喜欢
  • 2011-09-25
  • 1970-01-01
  • 2015-09-14
  • 2019-04-22
  • 1970-01-01
  • 1970-01-01
  • 2014-10-06
  • 2017-10-07
  • 2022-08-04
相关资源
最近更新 更多