Итак, каждый раз, когда я пытаюсь перейти к каталогу, он дает мне это сообщение, но когда я перешел к директории с десктопами, он сделал это только
Похоже, @steeldriver прав, ваш пример имеет что-то невидимое перед cd.
В вашем терминале вы видите, что я вижу?
$ type cd
cd is a shell builtin
Я не уверен, что это будет безвредно, если «shell builtin» относится к функциональности из / bin / sh или к оболочке типа / bin / bash или / bin / dash. Мое первое предположение, что это происходит из оболочки, а не sh. Убедитесь, что в вашей среде указан указатель $ SHELL.
$ echo $SHELL
/bin/bash
Если вы играли в вашем сеансе в интерактивном режиме с помощью команд типа «экспорт ...» или запуская скрипты или с помощью редактирования .bashrc, вы может вызвать проблемы, которые вы видите. Проверьте переменную SHELL.
Возможно, вы видите какой-то законный $ SHELL. Убедитесь, что на выходе указан файл, который в настоящее время существует.
$ ls -la /bin/bash
-rwxr-xr-x 1 root root 1099016 May 16 06:35 /bin/bash
Возможно, вы видите тире или что-то в этом роде.
Можете ли вы получить новый терминал, чтобы увидеть, происходит ли одно и то же? Каждый терминал запустит свою собственную оболочку, проблема может возникнуть по-другому или вообще отсутствует. Если проблема такая же, значит, проблема заключается либо в вашей конфигурации, либо в самих файлах оболочки.
Предположим, что у вас установлен пакет bash или любая другая оболочка, запустите новую оболочку в этом (-l означает входную оболочку):
$ bash -l
После этого проблема такая же?
Если это сбой, я бы использовал командную строку для установки / установите программы оболочки. У меня есть как bash, так и тире:
$ dpkg -l | grep bash
ii bash
4.4-2ubuntu1.1 amd64 GNU Bourne Again SHell
$ dpkg -l | grep dash
ii dash
0.5.8-2.3ubuntu1 amd64 POSIX-compliant shell
В вашей ситуации я попробую переустановить
$ apt-get install --reinstall bash
или такой. Есть вероятность, что если вы повредили файл оболочки, это исправит его, когда вы выйдете из системы и войдете в систему.
Зачем переустанавливать тире? В Ubuntu, хотя я делаю BASH свою оболочку, похоже, что / sbin / sh предоставляется тире:
$ dpkg -S /bin/sh
diversion by dash from: /bin/sh
diversion by dash to: /bin/sh.distrib
dash: /bin/sh
Одна последняя мысль. Если кто-то пытается взломать вашу систему и взять ее под контроль, одна из вещей, которую они могут сделать, это попытаться заменить вашу оболочку. Это может объяснить проблемы, которые вы видите, хотя я признаю, что это кажется драматичным, чтобы довести это до конца.
Похоже, @steeldriver прав, ваш пример имеет что-то невидимое перед cd.
В вашем терминале вы видите, что я вижу?
$ type cd
cd is a shell builtin
Я не уверен, что это пространство безвредно, если «shell builtin» относится к функциональности из / bin / sh или к оболочке типа / bin / bash или / bin / dash. Мое первое предположение, что это происходит из оболочки, а не sh. Убедитесь, что в вашей среде указан указатель $ SHELL.
$ echo $SHELL
/bin/bash
Если вы играли в вашем сеансе в интерактивном режиме с помощью команд типа «экспорт ...» или запуская скрипты или с помощью редактирования .bashrc, вы может вызвать проблемы, которые вы видите. Проверьте переменную SHELL.
Возможно, вы видите какой-то законный $ SHELL. Убедитесь, что на выходе указан файл, который в настоящее время существует.
$ ls -la /bin/bash
-rwxr-xr-x 1 root root 1099016 May 16 06:35 /bin/bash
Возможно, вы видите тире или что-то в этом роде.
Можете ли вы получить новый терминал, чтобы увидеть, происходит ли одно и то же? Каждый терминал запустит свою собственную оболочку, проблема может возникнуть по-другому или вообще отсутствует. Если проблема такая же, значит, проблема заключается либо в вашей конфигурации, либо в самих файлах оболочки.
Предположим, что у вас установлен пакет bash или любая другая оболочка, запустите новую оболочку в этом (-l означает входную оболочку):
$ bash -l
После этого проблема такая же?
Если это сбой, я бы использовал командную строку для установки / установите программы оболочки. У меня есть как bash, так и тире:
$ dpkg -l | grep bash
ii bash
4.4-2ubuntu1.1 amd64 GNU Bourne Again SHell
$ dpkg -l | grep dash
ii dash
0.5.8-2.3ubuntu1 amd64 POSIX-compliant shell
В вашей ситуации я попробую переустановить
$ apt-get install --reinstall bash
или такой. Есть вероятность, что если вы повредили файл оболочки, это исправит его, когда вы выйдете из системы и войдете в систему.
Зачем переустанавливать тире? В Ubuntu, хотя я делаю BASH свою оболочку, похоже, что / sbin / sh предоставляется тире:
$ dpkg -S /bin/sh
diversion by dash from: /bin/sh
diversion by dash to: /bin/sh.distrib
dash: /bin/sh
Одна последняя мысль. Если кто-то пытается взломать вашу систему и взять ее под контроль, одна из вещей, которую они могут сделать, это попытаться заменить вашу оболочку. Это может объяснить проблемы, которые вы видите, хотя я признаю, что это кажется драматичным, чтобы довести это до конца.