• 请不要在回答技术问题时复制粘贴 AI 生成的内容
loveshouhu
V2EX  ›  程序员

cd 路径深的时候,可以回来方便点

  •  
  •   loveshouhu · Nov 22, 2016 · 7488 views
    This topic created in 3637 days ago, the information mentioned may be changed or developed.

    写了个小工具不改变默认 cd 的行为下

    可以使用 cd .... 来代替 cd ../../..

    保留 cd 的所有特性

    额外支持 用 cd .... 代替 cd ../../..

    cd . 当前目录

    cd .. 上层目录

    cd ... 上上层目录

    cd .... 上上上层目录

    https://github.com/kaidiren/smartcd

    Supplement 1  ·  Nov 23, 2016
    评论里有很多种方法。
    根据需求自取。:)
    49 replies  •  2016-11-24 16:44:59 +08:00
    yangg
    yangg
    Nov 22, 2016
    1
    shopt -s autocd 2> /dev/null
    alias -- -="cd -"
    alias ..='cd ..'
    alias ...='cd ../../'
    alias .3='cd ../../../'
    alias .4='cd ../../../../'
    alias .5='cd ../../../../../'
    .0() {
    cd "$(git rev-parse --show-toplevel)"
    }
    knightdf
    knightdf
    Nov 22, 2016
    3
    d
    loveshouhu
    loveshouhu
    OP
    Nov 22, 2016❤️1
    4
    @langmoe 这个在用的 autojump 有权重的概念。陌生的路径跳起来会有问题。
    loveshouhu
    loveshouhu
    OP
    Nov 22, 2016
    5
    @yangg 实现的方式可以有很多种,但是我这边用的思路是尽量和 bash 原来的方式靠近,另外用的也不是穷举的方法 可以 CD .............. 很长的。虽然意义不太大 。_(:з」∠)_
    aristotll
    aristotll
    Nov 22, 2016❤️1
    6
    zsh 是不是支持类似的东西的..
    loveshouhu
    loveshouhu
    OP
    Nov 22, 2016
    7
    @aristotll 不知道,不喜欢 zsh 。所以一直没太用。_(:з」∠)_
    iamleung
    iamleung
    Nov 22, 2016
    8
    alias cd2='cd ../../'
    alias cd3='cd ../../../'
    alias cd4='cd ../../../../'
    一直是这么搞的,再偶尔搭配 autojump ,也足够用了
    Osk
    Osk
    Nov 22, 2016 via Android❤️2
    9
    cd -
    popd
    pushd
    Sasasu
    Sasasu
    Nov 22, 2016 via Android
    10
    不支持 tab (:-0)TL
    aheadlead
    aheadlead
    Nov 22, 2016
    11
    以前弄了个这个玩意

    function cdjump {
    CDJUMP_LAST_PWD=`pwd`
    for (( i=0; i<$1; i++ ))
    do
    cd ..
    echo "Jump to `pwd`"
    done
    }

    function cdjump_fuck {
    cd ${CDJUMP_LAST_PWD}
    }
    zhangxiao
    zhangxiao
    Nov 22, 2016
    12
    zsh, 用的 bindkey -s '\eu' '^Ucd ..; ls^M'
    meta-u 就回上一层, meta-u,u,u,u,u,u,u... 十分迅捷
    xcodebuild
    xcodebuild
    Nov 22, 2016
    13
    fasd 直接 z 回来就行了
    fortunezhang
    fortunezhang
    Nov 22, 2016
    15
    cd -
    4641585
    4641585
    Nov 22, 2016
    16
    zsh 还是 oh my zsh 就带有这个功能…
    mingyun
    mingyun
    Nov 22, 2016
    17
    @fortunezhang 这个常用
    qyz0123321
    qyz0123321
    Nov 22, 2016
    18
    @Osk +1
    jin5354
    jin5354
    Nov 23, 2016
    19
    zsh 自带这功能,配上 z.sh 真是实现光速文件夹切换
    cxbig
    cxbig
    Nov 23, 2016
    20
    zsh 支持不带 cd 命令,只输入正确的路径即跳转的功能
    oh-my-zsh 提供了一堆点的 alias
    于是只需要用点就够了
    msg7086
    msg7086
    Nov 23, 2016
    21
    嗯,一直用自带的…… zsh 。
    wuwuyun
    wuwuyun
    Nov 23, 2016
    22
    oh-my-zsh 自带了一堆的 alias
    看下就知道了
    wobuhuicode
    wobuhuicode
    Nov 23, 2016 via iPhone
    23
    Jump
    rashawn
    rashawn
    Nov 23, 2016 via iPhone
    24
    这功能 prezto 里面有啊
    hei1000
    hei1000
    Nov 23, 2016
    25
    这个还要新建个 project ?随便新建几个 aliases 不就行了

    另外推荐个自己写的快速跳转自己访问目录的命令
    https://github.com/c02y/dotfiles/blob/master/fish/.config/fish/config.fish#L442
    GeekCat
    GeekCat
    Nov 23, 2016
    26
    还不如 pushd popd......
    lusyoe
    lusyoe
    Nov 23, 2016 via iPhone
    27
    难道只有我用 ranger?
    sampeng
    sampeng
    Nov 23, 2016
    28
    oh-my-zsh 的 d 命令。。不要太好用
    hei1000
    hei1000
    Nov 23, 2016 via Android
    29
    @lusyoe ranger 是个好东西,我也在用
    v2014
    v2014
    Nov 23, 2016
    30
    oh-my-zsh 启用 z 命令
    springz
    springz
    Nov 23, 2016
    32
    autojump+zsh+ohmyzsh 你值得拥有
    Felldeadbird
    Felldeadbird
    Nov 23, 2016
    33
    学习了,我一直都是手动打 cd Σヽ(゚Д ゚; )ノ
    unknownservice
    unknownservice
    Nov 23, 2016
    34
    一直用 cd ~ 习惯问题?
    sunsmooth
    sunsmooth
    Nov 23, 2016
    35
    valkjsaaa
    valkjsaaa
    Nov 23, 2016
    36
    oh-my-zsh 再开启 z plugin ,路径问题就基本解决咯
    hackpro
    hackpro
    Nov 23, 2016
    37
    cd -
    grzhan
    grzhan
    Nov 23, 2016
    38
    感觉这个用习惯了会经常在 cd 以外的地方用

    比如 cp .../foo.txt . 这样的
    thomaspaine
    thomaspaine
    Nov 23, 2016
    39
    @loveshouhu 小守护~
    loveshouhu
    loveshouhu
    OP
    Nov 23, 2016
    40
    @thomaspaine 我的天。是 XD 么?
    loveshouhu
    loveshouhu
    OP
    Nov 23, 2016
    41
    @unknownservice 这个是直接跳回 用户的根目录。 跟 ... 的初衷不一样的。
    loveshouhu
    loveshouhu
    OP
    Nov 23, 2016
    42
    @Sasasu tab 还是 ../.. 补全吧 _(:з」∠)_
    loveshouhu
    loveshouhu
    OP
    Nov 23, 2016
    43
    @zhangxiao 快捷键什么的直接就高了一个层级。缺点是要记住这个快捷键。😂
    loveshouhu
    loveshouhu
    OP
    Nov 23, 2016
    44
    @grzhan 😂 所以慎用。
    mcfog
    mcfog
    Nov 23, 2016 via Android
    45
    fish 用户飘过
    loveshouhu
    loveshouhu
    OP
    Nov 23, 2016
    46
    @mcfog 😂 今天风不错,飘好,不送。
    Arnie97
    Arnie97
    Nov 24, 2016 via Android
    47
    alias p=pushd
    alias po=popd

    至于别的方案,自己机子上用用可以,换机器的时候就不好适应了…
    jiedreambuilder
    jiedreambuilder
    Nov 24, 2016
    48
    cd ../ 回车
    ↑ 回车
    ↑ 回车
    ↑ 回车。。。
    jiedreambuilder
    jiedreambuilder
    Nov 24, 2016
    49
    ↑ 跟 回车 距离那么近。。。感觉等你算好要敲多少个 . 你都出来了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   679 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 111ms · UTC 21:23 · PVG 05:23 · LAX 13:23 · JFK 16:23
    ♥ Do have faith in what you're doing.