linux命令详解(17)文件系统遍历 cd、pwd、ls命令详解

2014-12-9 13:13:22     3 人阅读    

遍历文件系统
切换目录(cd)、查看当前目录(pwd)和列出目录内容(ls)等基本命令可以说是众所周知,即使对那些很少使用shell的用户也是如此。本节主要讨论这些命令较少使用的选项以及其他用于在文件系统中移动的鲜为人知的特性下面是用于在文件系统中移动的命令cd的一些简单例子:

$ cd               切换至用户主目录
$ cd $HOME         切换至用户主目录
$ cd ~             切换至用户主目录
$ cd ~francois     切换至francois的主目录
$ cd -             切换至前一个工作目录
$ cd $OLDPWD       切换至前一个工作目录
$ cd ~/public_html 切换至用户主目录下的public_html目录
$ cd ..            切换至当前目录的上一层目录
$ cd /usr/bin      切换至根目录下的usr/bin
$ cd usr/bin       切换至当前目录下的usr/bin

使用pwd(print working directory,列印工作目录)可以查看所处的当前目录:

$ pwd
/home/francois

从文件系统其他位置访问文件的一种做法是创建符号链接,关于符号链接和硬链接的更多信息请参看。不过,符号链接可能会导致查看父目录时产生一定的混乱。下面的命令会在用户主目录下创建/tmp目录的符号链接,并说明如何从链接目录确认当前目录:

$ cd $HOME
$ ln -s /tmp tmp-link
$ ls -l tmp-link
lrwxrwxrwx 1 francois francois 13 Mar 24 12:41 tmp-link -> /tmp
$ cd tmp-link/
$ pwd
/home/francois/tmp-link
$ pwd -P
/tmp
$ pwd -L
/home/francois/tmp-link
$ cd -L ..
$ pwd
/home/francois
$ cd tmp-link
$ cd -P ..
$ pwd
/

使用pwd和cd加上-P和-L选项可以分别处理符号链接目录的永久和链接位置。在上面的示例中,cd -L ..切换到上一层即用户主目录,而cd -P ..则切换到上一层永久目录(/)。同样,pwd的-P和-L选项分别显示永久和链接位置。
bash会保存一个工作目录列表。要回到之前访问过的目录时,这个列表就能派上用场。该列表以栈的形式组织,使用pushd和popd添加和移除目录。

$ pwd
/home/francois
$ pushd /usr/share/man/
/usr/share/man ~
$ pushd /var/log/
/var/log /usr/share/man ~
$ dirs
/var/log /usr/share/man ~
$ dirs -v
0  /var/log
1  /usr/share/man
2  ~
$ popd
/usr/share/man ~
$ pwd
/usr/share/man
$ popd
~
$ pwd
/home/francois

dirs、pushd和popd命令还可以操作目录在栈里的顺序。例如,pushd -0会将栈底的目录推至栈顶(并切换到该目录)。命令pushd -2会将栈底数起的第三个目录推至栈顶。

本文是作者在读取《linux命令详解手册》之后的随手笔记,如果大家喜欢这本书,可以去购买


原文地址:http://www.itmmd.com/201412/286.html
该文章由 萌萌的IT人 整理发布,转载须标明出处。

android学习笔记(15)文本框(TextView)与编辑框(EditText)的功能和用法   上一篇
下一篇  linux命令详解(16)linux系统文件/目录权限操作 chmod、umask、chown、chgrp命令详解

精彩回复
发表评论
姓名:       

《程序员app》专门为程序员量身定做!