Mac OS X上的Autojump返回路径,但没有跳到所需的目录

时间:2015-05-08 19:29:53

标签: bash terminal osx-yosemite iterm2

我在OS X Yosemite上遇到的问题:

autojump v22.2.4(https://github.com/joelthelion/autojump),通过别名

j

返回我想跳转到的路径,但不执行实际的跳转。

sad 解决方法是复制返回的路径并将其添加到cd命令。

j work   
/Users/peterlustig/Documents/workspace/
# now copy the resulting path manually
cd /Users/peterlustig/Documents/workspace/ 

终端和iterm2都存在问题。我在

之后按照安装后的说明进行操作
brew install autojump 

并添加了

[[ -s $(brew --prefix)/etc/profile.d/autojump.sh ]] && . $(brew --prefix)/etc/profile.d/autojump.sh

到我的〜/ .bash_profile。

编辑:

jc work

让我跳到我的工作区'目录(在打印工作区目录的路径之后)。 现在,

有什么问题
j

3 个答案:

答案 0 :(得分:1)

我开始工作,我建议你做以下事情:

  1. 检查您正在运行的shell:

    ps -op $$
    
    # im runnning
    PID   TTY        TIME    CMD
    43977 ttys012    0:00.11 -bash
    
  2. 如果您喜欢我通过brew安装,那么您可能会添加(.sh个文件):

    [[ -s $(brew --prefix)/etc/profile.d/autojump.sh ]] && . $(brew --prefix)/etc/profile.d/autojump.sh
    
  3. 我正在运行bash并且不知道要包含不同的shell:

         # have a look in:
         /usr/local/etc
    
         # you should see mutliple shell scripts to include (depending on your env):
         autojump.bash -> ../Cellar/autojump/21.7.1/etc/autojump.bash
         autojump.sh -> ../Cellar/autojump/21.7.1/etc/autojump.sh
         autojump.zsh -> ../Cellar/autojump/21.7.1/etc/autojump.zsh
    
    1. 对我来说,只有/usr/local/etc/profile.d /usr/local/etc。将命令更改为:

      # ~/.bash_profile
      # i append this as my last line, that seems to work
      [[ -s $(brew --prefix)/etc/autojump.bash ]] && . $(brew --prefix)/etc/autojump.bash
      
    2. 退出终端并登录,这应该有效。

答案 1 :(得分:0)

似乎这个bug存在于最新版本的autojump(22.5.1)中。 autojump命令只打印出目录路径,但不会更改目录。

我做了以下事情 - 1.)在〜/ .zshrc文件中添加以下行

[[ -s `brew --prefix`/etc/autojump.sh ]] && . `brew --prefix`/etc/autojump.sh

2.)然后简单地创建一个别名,将autojump传递给cd命令

alias j=autojump | cd

希望这适合你们。

答案 2 :(得分:-2)

我在OSX上使用bash。它也不适合我。问题是我没有手动更改到任何目录。一旦我这样做,它就像宣传的那样工作。