快速切换目录命令go

平时有很多项目的目录,需要频繁的在这些目录中切换,效率很低。 之前总是在shell里ctrl + r 或者 cd -,后来目录多了这招也不好使了 我是个懒人,什么事重复三遍就不能忍 然后就用Python造了个命令go,可以方便智能的随意切换目录 先上代码,再继续说

#.bashrc中加入
go () {
	cd $(python /Users/auxten/scripts/thepath.py "$1")
}

/Users/auxten/scripts/thepath.py内容如下

#!/usr/bin/env python
# -*- coding: utf8 -*-

import sys
import os

path_dic = {
    "flow":"/Users/auxten/Codes/Android/VPN/flow",
    "byod":"/Users/auxten/Codes/Android/byod/git/byod",
    "vine":"/Users/auxten/Codes/baidu/ops-src/ops-vine",
    "gko":"/Users/auxten/Codes/gko_pool",
    "cdn":"/Users/auxten/Codes/baidu/ops-src/dlPlatform/log_analytics/web/web_env/",
    "proxy":"/Users/auxten/Dropbox/插件/spiderProxy/",
    "vpn":"/Users/auxten/Codes/Android/VPN/flow",
}

search_path = [
    "/Users/auxten/Codes/Android/byod/trunk/",
    "/Users/auxten/Codes/baidu/ops-src/",
    "/Users/auxten/Codes/",
]

path = "~"
try:
    path = path_dic[sys.argv[1]]
except KeyError,IndexError:
    for dir in search_path:
        tmp_path = os.path.join(dir, sys.argv[1])
        if os.path.isdir(tmp_path):
            path = tmp_path
            break

print path

如果在path_dic里指定类似这种

"flow":"/Users/auxten/Codes/Android/VPN/flow",
go flow
##就相当于
cd /Users/auxten/Codes/Android/VPN/flow

如果在path_dic里没有指定就会在search_path中按顺序查找flow文件夹,找到后就cd进去

时间: 2024-09-29 05:55:33

快速切换目录命令go的相关文章

在命令行快速切换目录(转载)

今天在微博上看到一个用命令行快速切换目录的文章,比之前自己的解决方案好了非常多,必须记录下来分享下. 每天在命令行下,一大部分的工作都是一遍又一遍的输入 cd ~/some/very/deep/often-used/directory这样来切换目录,现在利用一个简单的配置可以实现如下效果: 首先进入我的日常工作目录,标记一个书签mark sanguo cd /Users/kimi/work/123guo/sanguo mark sanguo 以后我再进入这个目录只需要g sanguo即可 g s

Mac 在命令行快速切换目录 mark

转自: http://www.ccvita.com/520.html ,略修改. 每天在命令行下,一大部分的工作都是一遍又一遍的输入 cd ~/some/very/deep/often-used/directory这样来切换目录,现在利用一个简单的配置可以实现如下效果: 首先进入我的日常工作目录,标记一个书签mark sanguo cd /Users/kimi/work/123guo/sanguo mark sanguo 以后我再进入这个目录只需要g sanguo即可 g sanguo 通过输入

命令行快速切换目录

背景:作为一个在linux下工作的人,很多时候要频繁的切换目录.windows有快捷方式,鼠标一点就好了.当然,linux也可以.某个不知名的专家说过,windows能做的linux都能做,windows不能做的linux也能做.先不说有木有道理了,暂且我就认为linux比windows强大一丢丢吧. 方案:使用符号链接跳转,实际上这个手工解决方案总结起来是在一个隐藏文件夹下(例如 ~/.marks)储存符号链接.这里有4个shell函数:jump, mark, unmark, 和marks.

Linux 指令详解 pushd 快速切换目录

指令:pushd 在不同目录间切换 在命令行模式中,当需要在不同目录中不停的切换时会发现不停的输入目录很麻烦,这个时候就需要用上pushd函数了 pushd工作原理: pushd将指定目录压入当前shell维护的目录栈,从而可以实现多个不同路径之间的切换. Ps:默认情况下,pushd函数可能不包括在你的Linux中,但存在于red Hat和用Red Hat驱动的系统中. 语法: # pushd [-n] [+N | -N | dir] 参数: -n: 只将目录加入到目录栈中,不切换目录 +N:

切换目录命令 - cd

1) 命令名称:cd 2) 英文原意:change directory 3) 命令所在路径:shell 内置命令 4) 执行权限:所有用户 5) 功能描述:切换目录 6) 语法: cd[目录名] 例子: l 切换到指定目录:cd /tmp/vae l 回到上一级目录:cd .. l 还是在当前目录:cd . l 返回上两级目录:cd ../.. l 返回进入此目录之前所在的目录:cd  - 原文地址:https://www.cnblogs.com/7q4w1e/p/9555610.html

linux如何快速切换到某目录

经常使用cd命令切换目录,虽有 cd -,历史目录pop push等操作,终究不直观.直接上代码及部署: i=1 HERE=`pwd` VALID_HERE=${HERE//\//\\\/} ALREADY_EXIST=`grep ^${HERE}$ $1` declare -a godirs while true; do   [[ $2 = "a" ]] && [[ x${ALREADY_EXIST} = "x" ]] && sed

Linux下目录快速切换小工具bd

假设现在所处的目录路径为:/tmp/ab/bc/cd/de/ef/fg/ab/zz/xx/yy,如何快速切换到ef目录? 通常使用cd命令进行目录切换,比较繁琐,此时可以使用bd工具 一.安装bd: # wget --no-check-certificate -O /usr/bin/bd https://raw.github.com/vigneshwaranr/bd/master/bd # chmod +rx /usr/bin/bd # echo 'alias bd=". bd -s"

windows安装使用python、环境设置、多python版本的切换、pyserial与多版本python安装、windows命令行下切换目录

1.windows下安装python 官网下载安装即可 2.安装后的环境设置 我的电脑--属性--高级--设置path的地方添加python安装目录,如C:\Python27;C:\Python33 3.多版本的切换三种方法: 1)修改C:\Python27;C:\Python33内python.exe为python2.7.exe.python3.3.exe,即可区别开来 2)path路径中去除不用的,保留要用的 3)切换到想使用版本的python.exe目录下使用python解释器 4.下载好

Linux切换目录pushd、popd、dirs命令

pushd和popd在linux中可以用来方便地在多个目录之间切换,切换目录虽然有一点复杂.在实际中,发现通过使用pushd和popd能够极大地提高效率. cd ~:表示返回当前用户的默认目录 cd -:表示回到之前的目录 [[email protected] share]$ pushd /boot/grub /boot/grub /usr/share ~/data [[email protected] grub]$ dirs -v 0 /boot/grub 1 /usr/share 2 ~/d