Иногда мне нужно cd
в каталог, где у моего пользователя нет прав, поэтому я прибегаю к sudo
.
Очевидная команда sudo cd somedir
не работает:
$ sudo mkdir test
$ sudo chmod go-rxw test
$ ls -l
drwx------ 2 root root [...snip...] test
$ cd test
-bash: cd: test: Permission denied
$ sudo cd test
sudo: cd: command not found
Использование sudo su
работает:
$ sudo su
# cd test
Можно ли сделать это однострочным? (Ничего страшного, просто праздное любопытство :)
Варианты, которые я пробовал, не сработали:
$ sudo "cd test"
sudo: cd: command not found
$ sudo -i cd test
-bash: line 0: cd: test: No such file or directory
$ sudo -s cd test
Последний не выдает ошибки, но он записывается в новую оболочку, которая завершается по окончании линия, так что на самом деле это меня никуда не ведет.
Может кто-нибудь объяснить мне, почему это происходит? Почему sudo cd
не найден, если, например, sudo ls ...
работает нормально?