快速切换目录命令go

本文介绍了一个使用Python编写的智能目录切换脚本,通过在.bashrc中定义一个名为go的命令,用户可以快速切换到预设的工作目录或在指定路径下搜索并进入目标目录,极大提高了开发效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

平时有很多项目的目录,需要频繁的在这些目录中切换,效率很低。 之前总是在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进去

 

转载于:https://www.cnblogs.com/51reboot/p/4005556.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值