linux目录切换

这两天回看了一下自己的博客内容.虽然目前没有多少,但是也体现出了一些问题.

最初的文章前面都有一句,项目需要.最初的内容都是东拼西凑.

终于系统的接触一些内容的时候发现.书籍仍然是学习知识最重要的途径.

可能同一个经验丰富的前辈共事也会学到很多.但是这样的学习毕竟是不系统的.缺乏连续性.今天要谈的内容,就更让我认识到,读书的重要性.

在我的印象里面,进入某个目录.cd是唯一一种方式.而我也自以为用的得心应手.

突然有一天,用的很是不顺手,因为同一个cd同一时间只能在同一个目录下.如果要切换目录,就可能要敲一长串命令.所以就多开几个窗口alt+tab .效果也是不错.然后就这么用了两年多,以为这是特别高效的方式了.

后来呢,老前辈告诉我用cd - .回来就试了一下,原来这个-是可以在两个目录间切换的.于是认为,这应该就是cd的最高用法了吧.而且用起来很爽.

就这样过了很久,一直到现在的某个时刻,当我静下来去研读一本书的时候.它问我三个目录的切换我该怎么办.我想了想,没有办法.

然后它告诉我:

用pushd 和 popd

pushd : 将目录放到栈里面编号保存,接下来就可以通过编号来进行访问了.当前目录永远排在最前面,编号为0

popd : 将某个编号的目录弹出栈.

dirs : 显示当前在栈中的目录.

用法特别简单,连参数都不用带,直接看一个例子来说明问题吧.

alai@alai:~/testspace/shell$ dirs
~/testspace/shell
alai@alai:~/testspace/shell$ dirs -v -p
 0  ~/testspace/shell
alai@alai:~/testspace/shell$ pushd /etc/
/etc ~/testspace/shell
alai@alai:/etc$ dirs -v -p
 0  /etc
 1  ~/testspace/shell
alai@alai:/etc$ pushd /proc/
/proc /etc ~/testspace/shell
alai@alai:/proc$ dirs -p -v
 0  /proc
 1  /etc
 2  ~/testspace/shell
alai@alai:/proc$ pushd /var/
/var /proc /etc ~/testspace/shell
alai@alai:/var$ pushd /boot
/boot /var /proc /etc ~/testspace/shell
alai@alai:/boot$ pushd /media/
/media /boot /var /proc /etc ~/testspace/shell
alai@alai:/media$ dirs -p -v 
 0  /media
 1  /boot
 2  /var
 3  /proc
 4  /etc
 5  ~/testspace/shell
alai@alai:/media$ pushd +4
/etc ~/testspace/shell /media /boot /var /proc
alai@alai:/etc$ dirs -p -v 
 0  /etc
 1  ~/testspace/shell
 2  /media
 3  /boot
 4  /var
 5  /proc
alai@alai:/etc$ pushd -4
~/testspace/shell /media /boot /var /proc /etc
alai@alai:~/testspace/shell$ 
alai@alai:~/testspace/shell$ 
alai@alai:~/testspace/shell$ dirs -p -v 
 0  ~/testspace/shell
 1  /media
 2  /boot
 3  /var
 4  /proc
 5  /etc
alai@alai:~/testspace/shell$ popd +1
~/testspace/shell /boot /var /proc /etc
alai@alai:~/testspace/shell$ popd -1
~/testspace/shell /boot /var /etc
alai@alai:~/testspace/shell$ dirs -p -v 
 0  ~/testspace/shell
 1  /boot
 2  /var
 3  /etc
alai@alai:~/testspace/shell$ dirs -c
alai@alai:~/testspace/shell$ dirs -p -v 
 0  ~/testspace/shell
dirs 可以带参数: p代表按行打印,v打印编号.c清空栈

pushd和popd都可以使用+-两种参数.+即为dirs -p -v 的结果.-就是把栈反方向理解就行了.


这应该也不是全部.以后在学习中我还是会继续积累.

写在前面的话并不是否定向经验丰富的前辈请教.想要表达的意思仅仅是应该多看书.有的时候可能我面前的大牛已经可以经天纬地了,我却还在问他如何获取一个目录的权限.如果隐藏文艺资源.很多时候并不是别人不说.只是我没有达到那个水平,问不出有技术含量的问题.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值