(Ни один из этих ответов не относится к Mac OSX, но именно так работает BSD/Unix. Так как Mac OSX/Darwin основан на BSD/Unix, ожидается, что он подойдет и будет работать нормально для вас, а также будет применяться к другим Unixes.)
Ага ... результаты, о которых вы сообщаете, соответствуют ожиданиям.
Вот что случилось: вы запустили "sudo". Команда "sudo" пыталась запустить "cd ~/.ssh", что, вероятно, не удалось, потому что "cd" является внутренней командой. Чтобы заставить эту команду работать, которая не будет выполнять то, что вы пытаетесь сделать, вы можете использовать:
sudo -c $ {SHELL} "cd ~/.ssh"
Затем команда sudo завершается, и вы возвращаетесь в свой текущий каталог, давая вам нежелательные результаты, которые вы получаете.
У вас должен быть доступ к вашему собственному домашнему каталогу, поэтому вы должны просто отказаться от слова "sudo", которое поможет вам с разрешениями. Если вы пытаетесь получить доступ к каталогу другого пользователя, вы, вероятно, захотите создать вложенную оболочку, поэтому вы должны использовать:
sudo -c $ {SHELL} "cd ~ anotherUser/.ssh"
Тогда ваш запрос, скорее всего, изменится на # вместо $, поскольку sudo предоставил вам привилегии суперпользователя. Когда вы закончите делать свои "рутинные" вещи, наберите "exit", чтобы вернуть ваше приглашение обратно к непривилегированному, показывая $ вместо #.