cd (change directory)
切换到特定目录,无参数时切换至用户家目录
格式
cd [-L|[-P [-e]]] [dir]
参数说明
- -L 将链接目录当做普通目录,默认选项
-
-P 使用物理目录,切换到链接目录所指向的目录
- -e 与-P连用,当当前目录无法被确定时,返回非0值
特殊符号代表的目录
-
~ 用户家目录
2.* . 当前目录或工作目录 - .. 当前目录的父目录
-
- 上次所在的工作目录
※ 使用pwd 命令可以查看当前目录
返回值
如果切换目录成功,则返回0,切换目录失败则返回非0(CentOS7 为1)
使用实例
- 切换到家目录:
cd
或cd ~
- 切换到根目录:
cd /
-
返回值测试:当切换的对象目录不存在,或者没有访问权限的时候返回值为1,切换成功则返回0.
[fish@localhost ~]$ cd /fish bash: cd: /fish: No such file or directory [fish@localhost ~]$ echo $? # 查看返回值 1 [fish@localhost ~]$ cd /root/ bash: cd: /root/: Permission denied [fish@localhost ~]$ echo $? # 查看返回值 1
-
-P与-L的区别测试
[fish@localhost ~]$ #新建软连接 [fish@localhost ~]$ ln -s /etc/yum.repos.d/ yum [fish@localhost ~]$ #查看当前目录是否存在软连接 [fish@localhost ~]$ ls -l . total 0 lrwxrwxrwx. 1 fish fish 17 Dec 5 03:16 yum -> /etc/yum.repos.d/ [fish@localhost ~]$ pwd # 当前目录 /home/fish [fish@localhost ~]$ cd yum/ [fish@localhost yum]$ pwd /home/fish/yum [fish@localhost yum]$ cd - # 切换回原先目录 /home/fish [fish@localhost ~]$ cd -L yum/ # 使用-L选项,证明默认为-L [fish@localhost yum]$ pwd /home/fish/yum [fish@localhost yum]$ cd - # 切换回原先目录 /home/fish [fish@localhost ~]$ cd -P yum/ # 使用-P选项,当前目录变为软连接所指向的目录 [fish@localhost yum.repos.d]$ pwd /etc/yum.repos.d
补充
-
cd 为内建命令
[fish@localhost ~]$ type cd # 查看命令类型 cd is a shell builtin
查看帮助文档需要用
help cd