政府应如何";CDPATH“;命令是否写入.bashrc文件?
我有一个深入文件夹的目录(XAMPP),我想政府应如何";CDPATH“;命令是否写入.bashrc文件?,bash,shell,command-line,terminal,shortcuts,Bash,Shell,Command Line,Terminal,Shortcuts,我有一个深入文件夹的目录(XAMPP),我想cd直接进入 我在终端中运行此命令:CDPATH=/Applications/XAMPP/xamppfiles/htdocs/ 而且它有效 因此,如果我希望这是永久性的,我必须将这一行添加到.bashrc文件中。但是将同一行添加到我的.bashrc文件不起作用 我的.bashrc文件包含: [ -n "$PS1" ] && source ~/.bash_profile CDPATH=/Applications/XAMPP/xamppfi
cd
直接进入
我在终端中运行此命令:CDPATH=/Applications/XAMPP/xamppfiles/htdocs/
而且它有效
因此,如果我希望这是永久性的,我必须将这一行添加到.bashrc
文件中。但是将同一行添加到我的.bashrc
文件不起作用
我的.bashrc
文件包含:
[ -n "$PS1" ] && source ~/.bash_profile
CDPATH=/Applications/XAMPP/xamppfiles/htdocs/
该行在
.bashrc
文件中应该是什么样子?我错了吗?我曾尝试将export
放在CDPATH
前面,还有$CDPATH:${HOME}/Applications/XAMPP/xamppfiles/htdocs
但两者都不起作用。首先要注意,CDPATH被认为是第一个目录,因此,如果另一个目录包含同名目录,您将无法轻松切换到本地目录。您可能会在前面添加一个空路径,写入CDPATH=:/Application/…
您不应该需要导出,因为该导出只与您的shell相关,而与您的shell运行的命令无关。你写的这行应该没问题
请注意,根据启动方式,bash将读取
~/.bashrc
或~/.bash\u profile
。在两者中添加一行echo
以调试在您的上下文中评估的文件。如果您想直接使用cd-htdocs
转到htdocs
,您应该输入:
export CDPATH=:/Applications/XAMPP/xamppfiles
转到您的$HOME/.profile
(并打开new Terminal.app窗口或source$HOME/.profile
)
在此之后
cd htdocs
是否将cd刻录到/Applications/XAMPP/xamppfiles/htdocs
您还可以为其创建特殊别名,例如:
alias xcd="cd /Applications/XAMPP/xamppfiles/htdocs"
Hmm在
/Application
中只有一个名为XAMPP
的文件夹。但是在htdocs
中还有一个名为xampp
(小写)的文件夹。这是否是问题的根源?我尝试了CDPATH=/Applications/./XAMPP/xamppfiles/htdocs/localweb/
和一些“空路径”变体,但没有成功。目前,CDPATH
的确切内容无关紧要。问题是,它是否被设定了。例如,您可以使用echo$CDPATH
进行检查。-可能还没有定下来。因此你必须找出原因我假设这是因为您的shell是作为登录shell启动的,因此不读取您的。bashrc
。看起来echo$CDPATH
返回根目录~
CDPATH
是一个变量,而不是一个命令。变量定义在哪里?首先尝试从命令行设置它,让它在那里工作,然后将它添加到您的登录脚本中。我尝试将这两行都放在~/.profile
中,但仍然没有成功。我假设~
是我的$HOME
?我在我的~
目录的.profile中有导出CDPATH=:/Applications/XAMPP/xamppfiles/htdocs/
。“我遗漏了什么吗?”亨利朱:是的——仔细阅读我的答案!您应该有CDPATH=:/Applications/XAMPP/xamppfiles
而不是PATH=:/Applications/XAMPP/xamppfiles/htdocs/