对于练习 – 我从/ bin / pwd中删除了对他人的执行权限:
$ chmod ox /bin/pwd $ ls -l /bin/pwd -rwxr--r-- 1 root root 26568 Apr 28 2010 /bin/pwd
和logging为马特我不能执行/ bin / pwd按预期:
$ /bin/pwd $ -bash: /bin/pwd: Permission denied
但如果不是绝对的,它可以突然执行:
$ pwd /home/matt
为什么? 谢谢!
pwd
是内置的shell。 你可以看到
$ type pwd pwd is a shell builtin
pwd
是大多数shell中的内置函数。 其中一个原因是,这是一个非常简单的命令,使用相当频繁(运行内置比产生外部进程更快)。 另一个原因是它允许shell跟踪符号链接,以便cd /foo/bar; pwd
cd /foo/bar; pwd
显示/foo/bar
即使bar
是符号的/wibble
(在bash和许多其他shell中,可以使用pwd -P
来显示/foo/bar
和pwd -L
来显示/wibble
;默认是由-o physical
选项)。