在命令行下,如何更舒服的退到某一层级的目录去。
- 0次
- 2021-07-16 20:18:48
- idczone
大多数 应该都是cd ../../../../..................................吧
git地址 https://github.com/peiliping/shell/blob/master/base/Function.sh
line num : 109
ccd和_ccd 在bashrc中 加载 并complete -F _ccd ccd
使用方法
ccd + tab 会提示pwd 中的每一级目录
ccd home 跳到 /home 目录下
ccd h + tab 提示pwd中 带h的目录名字或者自动补全
ccd 5 如果参数是数字 则直接向外跳N层目录(这个功能也许有人不喜欢吧,当初这么写是觉得以纯数字命令的目录名字会比较少,呵呵)
自己用了一段时间感觉还不错。
pushd popd
cd --
一般还真没有频繁切换这么深目录的时候
ccd数字不能忍...
有很多目录是 2014/02/23/ 这种...
web日志按小时切分存放的,同样也有2014/02/23/1500 这样的...
不过想法还是挺好的。
用了一下感觉不是很方便。不过确实以前没用过pushd popd
我主要是在代码目录切的时候比较多 ,你这个场景还真是没想到,去掉关于数字的判断就好了,或者加个 -N 之类的判断
主要是有tab提示,用起来舒服多了。
zsh+autojump
1. oh-my-zsh cd ... = cd ../../
2. brew install z
alias d.="cd .."
突然想到一个方法,待会写个demo发上来
google autojump
alias ..="cd .."
cd ../
上
回车
上
回车
好吧 刚才试了一下不行
思路是这样的 写个脚本 匹配参数与当前路径 然后做个 调整目录
但是问题是 这里的跳转并不影响shell 也就是调用脚本的终端 改变的只是当前进程的cwd
代码如下
python
import os
import sys
pwd=os.getcwd()
print pwd
pwds=pwd.split(os.sep)
print pwds
path='/'
if len(sys.argv)>1:
print sys.argv
for k in pwds:
print k
path=os.path.join(path,k)
if sys.argv[1] in k:
break
print(path)
os.chdir(path)
还是 zsh+autojump 靠谱
我的zsh里,command+u 是去上层目录,很方便
这个很科学
autojump
嗯, 我也是这个思路, 于是:
alias ..='cd ..'
alias ...='cd ../..'
alias ....='cd ../../..'
遇到一个名字叫 ... 的目录怎么办?
cd ./...
好问题,但是这样的异常情况我没遇到过,所以可以忽略吧。。。
cd -
用zsh的同学, 你懂的
autojump
dirs -v
ls 居然那么多 autojump 的。。。 表示还是 z 方便简洁
表示用的是z
常用的就这几个
bashrc
.. = cd ../
... = cd ../../
.... = cd ../../../
cdr = cd /
cdw = cd /home/www
然后是项目的
cdo = cd /home/www/xxx/....
已经非常快了
还有切换用户的
st = su tom
sr = su - root
一个叫..的目录,它本身不就是上级目录么?
我记得上级目录就叫..,难道还能另外创建这个目录?
Shell 记忆命令的功能走起
再把常用路径用 alias 缩短。
upto ()
{
cd "${PWD/\/[email&/>}
_complete_upto() {
local IFS=$'\n'
local word=${COMP_WORDS[COMP_CWORD]}
COMPREPLY=($(echo ${PWD| sed 's|/|\n|g' | grep -i "^$word" | sed -e 's| |\\ |g'))
}
complete -o nospace -F _complete_upto upto
/var/www/test/file1/file2 $ upto test
autojump
zsh +1
蛋疼,人家说的是 ... 三个点,就不能看清楚再回么
"\C-xb": "cd ..^M"
bash也可以设置快捷键。
oh~my~zsh
常用路径可以加到CDPATH里面,cd可以直接读路径下的目录
惊现张教主
cd ls tab
高频目录,我都会pwd,粗暴直接
alias
http://blog.sae.sina.com.cn/archives/1213
这个脚本不错