Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何修复bash概要文件中损坏的路径行?_Bash - Fatal编程技术网

如何修复bash概要文件中损坏的路径行?

如何修复bash概要文件中损坏的路径行?,bash,Bash,我正在尝试通过Bash安装自制软件,我对使用终端进行类似操作非常陌生。我使用本教程进行安装: 到了更新PATH变量的步骤,我把我的自制文件存储到的文件夹的路径弄错了。 现在,当我尝试查看我的Bash配置文件时,我得到了以下结果: $ source ~/.bash_profile -bash: export: `mac/applications/Homebrew:/name': not a valid identifier $ nano ~/.bash_profile -bash: nano:

我正在尝试通过Bash安装自制软件,我对使用终端进行类似操作非常陌生。我使用本教程进行安装:

到了更新PATH变量的步骤,我把我的自制文件存储到的文件夹的路径弄错了。 现在,当我尝试查看我的Bash配置文件时,我得到了以下结果:

$ source ~/.bash_profile
-bash: export: `mac/applications/Homebrew:/name': not a valid identifier
$ nano ~/.bash_profile
-bash: nano: command not found
我试着用这个问题的答案:但没有用。当我使用
/usr/bin/vim~/.bash_profile
时,我得到以下结果:

export PATH=/name my mac/applications/Homebrew:$PATH
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
"~/.bash_profile" 2L, 54C

这似乎不是正常的Bash概要文件编辑器,我无法从此屏幕中删除不正确的PATH变量。有什么想法吗?

我不知道“普通Bash概要文件编辑器”是什么。您可以使用您选择的编辑器(vim、nano、emacs等)编辑您的.bash_概要文件,它只是一个纯文本文件。在这种情况下,您可能希望完全删除该行,当然,如果这是上述建议的文件中唯一的内容,那么您可以使用
rm.bash\u profile
删除它。看起来
vim
只显示了一行
.bash\u profile

通过在bash中键入以下行,为path first设置一个合适的最小值:

$ PATH=/bin:/usr/bin
假设
nano
安装在
/usr/bin
中,只需
nano.bash\u配置文件
就可以再次工作

否则,只需
mv.bash\u profile.bash\u profile.saved
,或者,如果您确定它只包含那一行,则只需
rm.bash\u profile
即可将其完全删除

在带有空格的参数周围使用引号。你应该做:

export PATH="/name my mac/applications/Homebrew:$PATH"
这似乎不是正常的Bash概要文件编辑器,我无法从此屏幕中删除不正确的PATH变量。有什么想法吗

这似乎是
vim
编辑器的正常预期输出。如果您不熟悉
vim
,请使用其他更为初学者友好的编辑器。任何文本编辑器都可以

cp ~/.bash_profile ~/dead_bash_profile
cp /etc/profile ~/.bash_profile
这可能会引起其他用户的恐惧尖叫,但这是其中一个有趣的*nix解决方案,它要么工作完美,要么灾难性地失败。如果您觉得不太喜欢冒险,请使用/etc/skel/profile而不是/etc/profile(如果存在)

这将为你做两件事

a} 它将为您返回一个暂时的working.bash_配置文件,这是您非常需要的

b} 它会将损坏的bash配置文件保存在一个副本中,直到您对终端的使用有了足够的了解,您可以回来找出它的错误。这一点之所以重要,是因为带有损坏路径线的.bash_配置文件可能仍然包含您希望保留的其他内容,因此仅从轨道上对其进行核爆并不一定是一个好主意

如果你想更多地了解终端的使用,(而且你应该,为了你自己的利益,也因为它是一门即将消亡的艺术,需要新的学生),那么我建议你学习以下两个链接中的内容:-


你真的有一个名为
/name my mac
的目录吗?如果是这样,则当前赋值(带空格的无引号字符串)意味着您以
PATH=/name
结束;最终结果是包含空格的不带引号的字符串将损坏路径;要在分配中允许空白,您需要将分配给
PATH
的值双引号,例如,
PATH=“/name my mac/applications/Homebrew:$PATH”
(我已将
$PATH
括在引号中,以防
$PATH
的当前值也包含空白)@DanZehner:为了补充markp fuso的解释:命令
export a=u v w
将变量
a
v
w
放入环境中,从而将
a
设置为值u。在您的情况下,变量将是
PATH
my
mac/applications/Homebrew:/name
,最后一个变量在bash中不是有效的变量名,这正是错误消息告诉您的。
cp ~/.bash_profile ~/dead_bash_profile
cp /etc/profile ~/.bash_profile