Я закрыл терминал, убивая процесс, после этого при открытии нового терминала подсказки не было.
После поиска в Интернете других вопросов с помощью CTRL-C y получите ответ. Однако при открытии нового терминала подсказка снова исчезает.
Я попробовал следующий код:
^Cmartin@martin-N550JV:~$
martin@martin-N550JV:~$ ps
PID TTY TIME CMD
17626 pts/0 00:00:02 bash
20957 pts/0 00:00:00 ps
martin@martin-N550JV:~$ sudo kill 20957
[sudo] password for martin:
martin@martin-N550JV:~$ sudo kill 17626
martin@martin-N550JV:~$
Взят с этого сайта
Я также удалил, а затем переустановил терминал, с безуспешно.
Есть ли решение для этого?
При открытии терминала, Вы получаете невход в систему, интерактивную оболочку. Если Вы используете bash
файл запуска per-interactive-shell в масштабе всей системы /etc/bash.bashrc
и уровень пользователя per-interactive-shell файл запуска ~/.bashrc
.
Проблема, с которой Вы сталкиваетесь, может произойти из-за присутствия любой плохой инструкции (инструкций) в любом из этих двух файлов.
От ответа OP:
определение источника
~/.bashrc
инициируйте проблему. Это означает, что существует проблема с~/.bashrc
Возможные причины исчезающей подсказки удара:
Могло бы быть рекурсивное определение источника, которое может создать ситуацию с типом бесконечного цикла. Например, если существуют строки, существующие в Вашем ~/.bashrc
как,
if [ -f ~/.profile ]; then
. ~/.profile
fi
Это получит ~/.profile
. Но имейте в виду это ~/.profile
всегда источники ~/.bashrc
(это - корректный путь). Следовательно Вы находитесь в бесконечном цикле. Не получать ~/.profile
от ~/.bashrc
Под такой ситуацией Вы не можете получить подсказку, если Вы не поражаете Ctrl+C
Поиск и устранение неисправностей
Можно вставить строку Ваш ~/.bashrc
set -x
Затем Вы видели, что дескриптор файла останавливается при открытии терминала.
Как восстановиться
Возьмите резервное копирование ~/.bashrc
и получите новый от /etc/skel
. Используйте в терминале,
mv ~/.bashrc ~/bashrc.bkp
cp /etc/skel/.bashrc ~/
Это заменит Ваш ~/.bashrc
с новым.
Любой, на которого похожа проблема, поскольку я ожидал (описанный выше), или что-то еще должно быть решено после замены ~/.bashrc
поскольку это только связано с Вашим ~/.bashrc
.
Вероятно, приглашение оболочки было случайно настроено, чтобы быть пробелом.
В окне терминала, сделайте
,/etc/bashrc
нано sudo cp/etc/bashrc/etc/bashrc.sav
sudo тогда изменяет PS1 для становленияPS1 = "[\u@\h:\w], $"
сохраняют, и выход.
ls - al/etc/ba*
покажет bashrc файлы - что Вы имеете?
Выполнение этой команды помогло мне решить эту проблему:
reset
У меня была проблема с неработающим, заблокированным lxterminal
и простым $
для xterm
.
Я обнаружил, что на моем старом N600C с Lubuntu 14.04, обновленной до 16.04, echo $0
говорит мне, что я использую /bin/sh
вместо /bin/bash
.
После этого нужно было просто изменить оболочку по умолчанию на /bin/bash
так, как я счел нужным для моей установки.
Есть несколько способов сделать это; однако они выходят за рамки проблемы ОП.
Когда я вернулся к /bin/bash
, это исправило xterm
, а также lxterminal
, теперь оба показывают пользователя, хост и pwd
.