我使用过的Linux命令之cd - 更改当前工作目录

我使用过的Linux命令之cd - 更改当前工作目录

本文链接:http://codingstandards.iteye.com/blog/790088    (转载请注明出处)

用途说明

cd命令是最常用的命令,另外几个是ls、pwd。它用来更改当前目录(Change the current directory)。当我们登录后,默认的目录是主目录,可以用cd来改变工作目录。文件或目录的路径有两种表达方式,一种是绝对路径,从/开始,另一种是相对路径,从当前目录开始,.表示当前目录,..表示上级目录。pwd命令用来查看当前所在的目录。

常用方式

环境变量OLDPWD表示前一次的当前目录。刚登录系统之后,这个变量是没有设置的。

环境变量PWD表示当前目录。

环境变量CDPATH用来指定cd命令的搜索路径,类似于PATH,它也是用:分隔的一些目录组成。

cd dir 更改当前目录为dir。如果dir不以/开头,那么先从CDPATH指定的目录中查找dir,如果找到就更改,否则从当前目录开始查找dir。

cd 不跟任何参数则更改当前目录为主目录。

cd ~ 也可以更改当前目录为主目录。

cd ~user 更改当前目录到用户user的主目录。

cd - 更改目录到前一次的当前目录。

cd .. 更改目录到上级目录。注意中间加空格,cd..是不行的。

使用示例

示例一 到根目录

Last login: Thu Oct 21 07:47:52 2010 from 121.76.111.158
[root@jfht ~]# pwd
/root
[root@jfht ~]# cd /
[root@jfht /]# pwd
/
[root@jfht /]# ls
bin   dev  etc   imx_counter  lib         media  mnt  nss_counter  proc  sbin     software  sys       tmp  var
boot  e:   home  iss_counter  lost+found  misc   net  opt          root  selinux  srv       tftpboot  usr
[root@jfht /]#

示例二 到主目录

[root@jfht /]# cd
[root@jfht ~]# pwd
/root
[root@jfht ~]# echo $OLDPWD
/
[root@jfht ~]# echo $PWD
/root
[root@jfht ~]#

示例三 使用CDPATH来指定cd的搜索路径

[root@jfht /]# CDPATH=/root/work191:/opt
[root@jfht /]# ls apache
ls: apache: 没有那个文件或目录
[root@jfht /]# cd apache
/opt/apache
[root@jfht apache]# pwd
/opt/apache

[root@jfht apache]# echo $OLDPWD
/
[root@jfht apache]# echo $PWD
/opt/apache

示例四 到某个用户的主目录

[root@jfht ~]# cd ~csd
-bash: cd: ~csd: 没有那个文件或目录
[root@jfht ~]# cd ~mike
[root@jfht mike]# pwd
/home/mike
[root@jfht mike]# echo $OLDPWD
/root
[root@jfht mike]# echo $PWD
/home/mike
[root@jfht mike]#

示例五 更改当前目录到//下

[root@jfht mike]# cd //
[root@jfht //]# pwd
//
[root@jfht //]# echo $OLDPWD
/home/mike
[root@jfht //]# echo $PWD
//
[root@jfht //]# command pwd
//
[root@jfht //]# type -a cd
cd is a shell builtin
[root@jfht //]# type -a pwd
pwd is a shell builtin
pwd is /bin/pwd
[root@jfht //]# /bin/pwd
/
[root@jfht //]# cd
[root@jfht ~]#

示例六 返回前一次的当前目录(2011.08.04)

有时候,输入cd之后不小心按了回车,回到了主目录,想返回刚才的当前目录,可以用 cd $OLDPWD

[root@node56 map20110801]# cd
[root@node56 ~]# cd $OLDPWD
[root@node56 map20110801]#

问题思考

1. 怎么使用CDPATH简化你的工作目录管理?

相关资料

【1】中国IT实验室 Linux 指令篇:档案目录管理--cd

返回 我使用过的Linux命令系列总目录

猜你喜欢

转载自codingstandards.iteye.com/blog/790088