如果我登录然后通过以下方式转到我的超级用户根目录:
sudo su -
我现在在根目录中。我可以通过 显示文件和目录列表ls
。但是相当多的目录似乎不存在。例如,我可以:
cd /svr/www
最后进入目录www
。svr
当我从 root 键入命令时,没有显示该目录ls
,也没有显示任何显示的目录下。
我错过了什么?
答案1
执行完该命令后,sudo su -
我想你会发现你位于 root 的主目录中,/root
而不是根目录中/
。因此ls
不会显示/srv
。我建议你使用pwd
来检查你位于哪个文件夹中。
答案2
如果你在/
目录中并输入ls
,你将不是查看“递归”子目录。您将只看到当前目录的直接子目录。因此,为了查看,/srv/www
您必须先执行cd /srv
,然后执行ls
。
有递归这样的东西ls
;但是,如果您需要完整路径,则find
是一种更好的选择。
看这个 StackOverflow 问题它已经讨论了递归文件/目录列表的主题。