使用sh
shell(不是bash
),Linux/UNIX 中的哪个命令会打印出我的当前目录?
$ *showmewhereiam*
/sys/kernel/debug
$
Run Code Online (Sandbox Code Playgroud)
lou*_*ear 68
试试pwd
。
$ pwd
/home/<username>
Run Code Online (Sandbox Code Playgroud)
Mar*_*oth 13
虽然一般的答案是pwd
,但请注意,这可能会产生不同的结果,具体取决于您到达给定目录的方式以及路由是否包含符号链接。
举例来说,如果你有一个名为目录real
和符号链接到名为该目录virtual
,你cd
的virtual
目录,然后pwd
将显示virtual
目录名,即使实际的目录你是在为real
。
要显示真正的底层目录,请使用pwd -P
或readlink -f
(对于任意路径):
$ mkdir 实数 $ ln -s 实虚 $ cd 虚拟 $密码 /home/用户名/tmp/virtual $密码 -P /home/用户名/tmp/real $ readlink -f 。 /home/用户名/tmp/real
请注意,shell 经常pwd
用它们自己的内部版本替换命令,所以在我的系统 (RHEL6) 上,即使pwd(1)
手册页表明它--physical
会和 一样工作-P
,因为我正在运行bash
,它不会:
$ pwd --物理 bash: pwd: --: 无效选项 密码:用法:密码 [-LP] $ /bin/pwd --物理 /home/用户名/tmp/real $ /usr/bin/env pwd --physical /home/用户名/tmp/real
归档时间: |
|
查看次数: |
170178 次 |
最近记录: |