.bash_profile打不开

.bash_profile won't open

当我 运行 open .bash_profile 一个新终端打开并且

Last login: Wed Nov 30 19:01:22 on ttys004
/Users/MyName/.bash_profile ; exit;
➜  ~ /Users/MyName/.bash_profile ; exit;

[Process completed]

我的权限是

-rwxr-xr-x@    1 MyName  staff       639 Nov 30 19:02 .bash_profile

另外,当我运行 ls -la时,.bash_profile是红色的。我不知道为什么。以前不是这样的。

我只是想创建一个别名,但现在我什至无法打开 .bash_profile

tl;dr

要确保使用 macOS open CLI 在默认 文本编辑器 中打开文件,请使用:

open -t ~/.bash_profile

否则,如果文件不需要可执行、运行 chmod -x <file>chmod -x ~/.bash_profile,在这种情况下)使open 表现得像以前一样。


根据你的问题我推断你使用的是 macOS (OS X).

macOS open CLI 在传递文件时的作用取决于文件的后缀(扩展名),如果没有后缀,则取决于文件是否具有 可执行文件 (r) 设置了权限位(如果没有,文件将在标准文本编辑器中打开,这就是您之前看到的)。

当您使用 ls -a 时,文件显示为 红色 -a 是显示隐藏项目所必需的,例如 .bash_profile),暗示该文件确实可由您执行。

无后缀的 可执行文件 (文本)文件导致 open 到 运行 它在新终端 window 作为 shell 脚本,这就是你所看到的。

换句话说:在您不知道的某个时候,可执行权限被分配给 ~/.bash_profile,这解释了行为的变化。

但是,不需要 使 ~/.bash_profile 可执行,因为 来源 Bash 启动时。

如上所述,要么删除可执行权限,要么直接使用open -t打开它。