Linux 切换目录更方便: pushd,popd,dirs,cd
来源:互联网 发布:量化交易软件 编辑:程序博客网 时间:2024/06/05 19:58
让切换目录更方便: pushd,popd,dirs,cd - 一,为何要使用这几个命令? 还有:因为工作的需要,我们需要不停在几个很深层的目录之间切换,不止一个,那么即使有tab键帮忙,我们也会因为一个cd命令花费很多时间,如何在多个目录之间切换时能更方便些。 说明: pushd,popd,dirs这几个我们讲到的命令是bash内建的命令, 二,如何在两个目录之间切换? 如果只是在两个目录之间切换,那么还不必使用pushd,这时只需使用 cd -就可以了 怎么样?在两个目录之间切换非常方便,无需再输入很长的路径 说明: $OLDPWD变量就是bash所记录的前一个目录也就是说:$OLDPWD和-相等 我们可以得到结构: 用cd -和cd $OLDPWD都可以在最近所操作的两个目录之间进行切换 1,先来介绍我们会用到的3条命令 pushd:切换到作为参数的目录,并把原目录和当前目录压入到一个虚拟的堆栈中 popd: 弹出堆栈中最近的目录 2,如何在最近的两个目录之间切换? 在最近的两个目录之间切换:用pushd不加参数即可 [root@localhost kget]# pushd /boot/grub/ 说明:可以看到,用pushd不加参数在最近的两个目录之间切换时,
可能大家会有疑问,为何要使用这几个命令,
难道用cd不就可以切换目录了吗?
没错,使用cd就可以切换到需要访问的目录,但是有时会是一个路径很长,层次很多的目录,进到此目录下后,这时我们不小心运行了 cd命令,理所当然,我们回到了自己的home目录,这时如果想回去怎么办?
pushd,popd是我们的好帮手
所以只要登录到了bash,这几个命令就可以使用了
cd -的作用是可以回到前一个目录,
看例子:
[root@localhost ~]# cd /usr/share/kde4/apps/kget/pics/
[root@localhost pics]# cd -
/root
[root@localhost ~]# cd -
/usr/share/kde4/apps/kget/pics
[root@localhost pics]#
为何cd -能够回到前一个目录?
这是因为 -在此处等同于 $OLDPWD变量,此问题可以参见bash的info信息,
cd 一项有相关的说明: An argument of - is equivalent to $OLDPWD.
下面我们再看一个例子:
[root@localhost ~]# cd /usr/share/kde4/apps/kget/pics/
[root@localhost pics]# echo $OLDPWD;
/root
[root@localhost pics]# cd $OLDPWD
[root@localhost ~]# echo $OLDPWD;
/usr/share/kde4/apps/kget/pics
[root@localhost ~]# cd $OLDPWD;
[root@localhost pics]# echo $OLDPWD;
/root
三,如何在多个目录之间切换?
因为 cd -和 cd $OLDPWD都是只支持最近操作的两个目录,所以要在多个目录之间操作时,我们需要使用 pushd
如果不指定参数,则会回到前一个目录,并把堆栈中最近的两个目录作交换
dirs: 列出当前堆栈中保存的目录列表
看例子:
[root@localhost ~]# pushd /usr/local/sbin/
/usr/local/sbin ~
[root@localhost sbin]# dirs
/usr/local/sbin ~
[root@localhost sbin]# dirs -p -v
0 /usr/local/sbin
1 ~
[root@localhost sbin]# pushd /usr/share/kde4/apps/kget/
/usr/share/kde4/apps/kget /usr/local/sbin ~
[root@localhost kget]# dirs -p -v
0 /usr/share/kde4/apps/kget
1 /usr/local/sbin
2 ~
说明: dirs的 -p参数可以每行一个目录的形式显示堆栈中的目录列表
-v参数可以在目录前加上编号
注意:有 -v时,不添加 -p也可以每行一个目录的形式显示
说明之二:我们可以看到:最近压入堆栈的目录位于最上面
/boot/grub /usr/share/kde4/apps/kget /usr/local/sbin ~
[root@localhost grub]# dirs -v
0 /boot/grub
1 /usr/share/kde4/apps/kget
2 /usr/local/sbin
3 ~
[root@localhost grub]# pushd
/usr/share/kde4/apps/kget /boot/grub /usr/local/sbin ~
[root@localhost kget]# dirs -v
0 /usr/share/kde4/apps/kget
1 /boot/grub
2 /usr/local/sbin
3 ~
[root@localhost kget]# pushd
/boot/grub /usr/share/kde4/apps/kget /usr/local/sbin ~
[root@localhost grub]# dirs -v
0 /boot/grub
1 /usr/share/kde4/apps/kget
2 /usr/local/sbin
3 ~
当前目录总是位于堆栈的最上面
- Linux 切换目录更方便: pushd,popd,dirs,cd
- 让切换目录更方便: pushd,popd,dirs,cd -
- [bash]让切换目录更方便: pushd,popd,dirs,cd -
- 让切换目录更方便: pushd, popd, dirs, cd -
- [Linux]:linux [bash]切换目录更方便: pushd,popd,dirs,cd
- [linux][bash]让切换目录更方便: pushd,popd,dirs,cd -
- 如何在Linux系统中快速切换目录(目录栈的使用) pushd popd dirs
- 多个目录之间的切换-pushd、popd、dirs
- pushd,popd,dirs,cd - 的使用
- pushd popd切换目录
- linux目录切换pushd和popd
- linux中的pushd命令及栈原理 [shell] pushd,popd,dirs,cd -
- linux命令cd pushd popd
- 方便的目录转换-----pushd、popd、dirs
- linux shell pushd popd dirs命令
- Linux中pushd、popd和dirs
- linux shell pushd popd dirs命令
- linux shell pushd popd dirs命令
- 关于如何获得数据库插入操作中数据的自增长主键的值
- 数一数二之2011位数除9余几
- 带您深入了解oracle权限管理
- C/C++编译过程的9个阶段
- iPhone读取和写入plist文件
- Linux 切换目录更方便: pushd,popd,dirs,cd
- windows 下时间变量
- 天气预报接口(中国天气网)
- iPhone中如何从Application Bundle中读取文件
- Python中XML详解
- 【POJ2192】Zipper(动态规划)
- Android native crash log分析
- .net 自动向用户发送邮件
- 自定义等待光标UIActivityIndicatorView及状态栏UIStatusBar