sudo open -e ~/.bash_profile 权限被拒绝 mac

12
我正在尝试编辑bash_profile文件,通过在我的mac机器上使用以下命令添加sdk路径。 sudo touch ~/.bash_profile; open -e ~/.bash_profile 它会在TextEdit中打开文件,但不允许我编辑它。虽然我在运行上述命令时已经授予了超级用户权限和密码,但当我尝试编辑它时,它会给我以下消息。
“您不拥有“.bash_profile”文件,也没有写入它的权限。 您可以复制此文档并编辑副本。只有副本将包含您的更改。” 我对mac不熟悉,请详细解释您的答案。

顺便提一下,你不应该以超级用户的身份创建文件,~/路径是你自己的主目录,~/.bash_profile文件应该归你所有。 - Some programmer dude
1
我不是在尝试创建这个文件。它已经存在了。我只是想编辑它以设置一个PATH变量。 - FarheenP
1
OSX的open命令可能会更改用户或其他内容。对于该文件,它应该归您(farheen)所有。使用chown更改它:sudo chown farheen ~/.bash_profile。之后,您就不需要再使用sudo来编辑它了(只需使用open命令!不要使用sudo touch!)。 - Some programmer dude
@JoachimPileborg 谢谢!这对我有用 :) - FarheenP
更新了我现有的答案。 - Some programmer dude
显示剩余4条评论
3个回答

19
问题在于该文件不是由您的用户拥有,而是由 root 拥有。您需要将文件的所有者更改为您的用户,然后您可以在不使用 sudo 的情况下打开和编辑该文件。
sudo chown farheen ~/.bash_profile

作为超级用户,这将会把文件的所有者更改回您自己。


2
sudo open -e ~/.bash_profile;我已经这样做了,但我仍然收到相同的错误消息。我想要做的就是编辑这个文件。 - FarheenP

7

对于Catalina Mac用户,

.bash_profile文件无法打开,需要授权才能编辑。您可以按以下步骤实现:

1)打开终端并输入以下命令,例如:sudo chown iMac ~/.bash_profile

sudo chown {your username} ~/.bash_profile

2) 在终端中打开编辑器,这里我使用了 nano

nano .bash_profile

3) 编辑你想要的文本。

4) 要保存所做的更改,请按 Ctrl + O

5) 要退出nano,请按 Ctrl + X

6) 最后,为了加载您的更改,请输入以下命令。

source .bash_profile

0

OR

您可以使用以下方式授予权限并将其变成可执行文件:

该错误可能意味着 'bash_profile' 不可执行。如果它在当前目录中,您可以使用 chmod +x bash_profile 命令使其可执行。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接