Answers:
cd是内置的shell。sudo仅适用于可执行文件。您可以这样做,sudo sh -c 'cd dirname'但是一旦外壳退出,您将返回到您开始的目录。如果您说的是您要完成的任务,那么我可以帮助您找到一种方法。
sudo pwd也行不通吗?(我一直想通sudo cd 做的工作,但你只是没有看到后的结果sudo回报。但是,这只是胡乱猜测,也许没有cd,也不pwd是实际内置在猛砸在Mac上运行which cd 并确实给我的结果。运行sudo cd /不会给我一个错误,但实际上不会导致工作目录更改。)
pwd也是一个外部可执行文件,因此可以正常工作。请注意,在某些系统上,有一个cd可执行文件,但是它几乎没有用。顺便说一句,尝试使用type -a cd它比提供更多信息which。
type -a cd同时显示cd is a shell builtin和cd is /usr/bin/cd。对于pwd和也是如此echo。两者sudo pwd并sudo echo "Hello world"给我一个结果。但是,type -a return只有屈服return is a shell builtin,并向sudo return 3我展示sudo: return: command not found。因此,我想问题是:OP是否收到错误消息,或者OP cd没有任何错误就看不到工作?(或者:OP使用的是什么操作系统。)
sudo sh -c 'cd dirname'对我没有任何帮助