【问题标题】:Open "Opt" folder with Terminal on Mac在 Mac 上使用终端打开“Opt”文件夹
【发布时间】:2016-07-13 02:05:52
【问题描述】:

所以这是一个简单的问题,其答案被证明是难以捉摸的。我最近安装了一个需要添加一些文件的文件夹。该文件夹存储在“opt”文件夹中,我认为它很简单:

我的用户名~/opt/文件夹名

但我似乎找不到“选择”。我可以在 Finder 中查看文件,但我需要创建一些文件,我宁愿在命令行上执行此操作。谁能给我一些访问它的提示?

【问题讨论】:

  • 文件是在~/opt/foldername(您的主文件夹下)还是/opt/foldername(在根目录下)?我见过后者使用过,如果是这种情况,请删除~
  • 它们似乎在 Macintosh HD > opt > 文件夹名。
  • 你可以在/usr/local/opt找到opt文件夹,你能粘贴ls /usr/local/opt吗?

标签: macos terminal directory


【解决方案1】:

/opt 文件夹在 OSX 中显然没有使用 /usr/local,例如,homebrew 显然使用 /usr/local/opt 而不是 /opt。所以如果你需要把一些东西放在/opt 目录中,你可能需要把它放在OSX 中的/usr/local/opt 中。

通过创建一个新的根目录/opt 来搞乱文件结构听起来不是一个好主意。如second thread below 中所述 "macOS is BSD-based and consequently I'd use /usr/local. Note that you can create a program directory and then symlink commands to /usr/local/bin.

我希望更了解 OSX 内部的人可以回答这个问题。

来源

  1. https://apple.stackexchange.com/questions/119230/what-is-standard-for-os-x-filesystem-e-g-opt-vs-usr

  2. Why is there a /usr/local/opt directory created by Homebrew and should I use it?

【讨论】:

    【解决方案2】:
    • OSX 中的 opt 文件夹默认是隐藏的
    • 要使其在 Finder 中可见,您需要运行此命令
        defaults write com.apple.finder AppleShowAllFiles YES;
    

        killall Finder /System/Library/CoreServices/Finder.app;
    
    • 接下来,转到 Finder,然后单击 Macintosh HD 即可看到 opt 文件夹。

    • 无论如何都可以在终端中访问opt。

    • 我想你使用的命令是错误的

        myusername ~/opt/foldername
    

    ~ 表示当前登录用户的主目录。所以你需要把它改成:

        myusername$ cd /opt/
    



    注意: 要撤消您的更改,请运行以下命令

        defaults write com.apple.finder AppleShowAllFiles NO;
    

        killall Finder /System/Library/CoreServices/Finder.app;
    

    【讨论】:

    • 在我完成 opt 文件夹后,请问如何撤消这些?因为这些隐藏文件到处都是
    • 啊,刚刚知道 CMD + shift + . 是显示/隐藏隐藏文件的快捷键 :)
    • 并将默认值更改为 NO 应该撤消它
    【解决方案3】:
    • 打开查找器
    • 按 Command+Shift+G 打开全局文件夹查找器
    • 输入以下搜索:/usr/local/opt

    • 点击“开始”
    • 打开“转到文件夹”
    • 输入以下搜索:/usr/local/opt

    【讨论】:

      【解决方案4】:

      根据您的描述,在命令行中使用/opt/foldername 而不是~/opt/foldername。第一个表单将访问根目录下的文件夹,第二个表单将访问主文件夹中的文件夹。

      根据它的设置方式,它可能会也可能不会为您提供写访问权限。您可以使用 sudo chown -R /opt/foldername username(其中 username 是您的用户名,如果您不知道您的用户名,您可以在命令行上键入 whoami 来查找)声明文件夹的所有权以及它包含的所有内容(如果您缺少 write)访问。

      编辑:因为存在一些混淆,我在此指出/opt/usr/local 一样是UNIX 派生系统中的标准。它们的用途略有不同,但差异很微妙(如果您有兴趣,请在此处回答完整描述 https://unix.stackexchange.com/questions/11544/what-is-the-difference-between-opt-and-usr-local)。因此,使用/opt 的安全性不亚于使用/usr/local,并且通常比使用/usr/local/opt 之类的组合更可取。

      【讨论】:

      • 感谢您的建议!我尝试了 sudo 命令,我得到的只是“非法用户名”。有什么建议吗?
      • 建议Leia,当您可以在Finder中查看文件时,Command单击顶部的文件夹名称以查看包含文件的文件夹所在的位置。它是您的家庭文件,还是计算机高清中的链条?
      • @Leia_Organa 你可能根本不需要那个命令;仅当您无法写入该文件夹时。此外,您不能使用文字“用户名”,您必须使用自己的。如果您不知道自己的用户名,请在终端中输入whoami
      • @Leia_Organa 这对你有用吗?如果没有,请告诉我它是如何失败的,我会对其进行修改以使其正常工作。
      • @hhh 与/usr/local 一样,/opt 已在 UNIX 派生系统(包括 OSX)中用作特定于站点的“可选”安装的标准位置。 许多 软件包都假定它是这样使用的,因此 Apple 采取措施打破这种预期的可能性非常低。使用/usr/local/opt 并不比使用/opt 更安全。有关差异的更完整说明,请参阅此答案unix.stackexchange.com/questions/11544/…
      猜你喜欢
      • 1970-01-01
      • 2020-01-14
      • 1970-01-01
      • 2019-01-17
      • 2019-08-25
      • 1970-01-01
      • 2021-07-23
      • 2020-06-24
      • 1970-01-01
      相关资源
      最近更新 更多