При использовании терминала в глубокой структуре папок иногда приглашение может занимать большую часть строки. Есть ли способ, которым я могу обрезать рабочий каталог? Я знаю, что могу сделать
PS1="\W >"
распечатать только текущий каталог, а не полный путь, но есть ли способ получить что-то вроде:
/home/smauel/de...ther/folder >
command-line
bash
prompt
smauel
источник
источник
~/.bashrc
? Будет ли вставлять последнюю строку внизу файла?Если вы используете bash4 (в Ubuntu 9.10 и более новой версии есть bash4), самый простой вариант - просто установить переменную PROMPT_DIRTRIM. например:
Для примера, аналогичного примеру Жоао Пинту (который будет работать в старых версиях bash и гарантирует, что компонент path никогда не будет длиннее 30 символов), вы можете сделать что-то вроде этого:
источник
Другим способом решения этой проблемы является включение разрыва строки в PS1, чтобы рабочий каталог и фактическое приглашение отображались в отдельных строках, например:
источник
Добавьте это к нижней части вашего
~/.bashrc
По общему признанию это могло вероятно быть чище, но я хотел получить трещину в этом.
Ожидаемый выход для каталогов глубиной более трех слоев.
Ожидаемый вывод для каталогов с рабочего стола и обратно.
источник
Это небольшое дополнение к отличному ответу @ joão-pinto добавляет имя виртуальной среды при запуске
workon
команды.источник
На основании ответа Криса Салливана , но с сохранением
~
для домашней папкиисточник
Мне больше всего нравится этот,
PS1="[\W]\\$ "
источник
это приглашение сокращает все имена, кроме текущей строки this:
источник
Просто немного обновить (для Python3) и улучшить выбранный ответ, чтобы добавить цвета к приглашению в соответствии с приглашением BASH (в любом случае в Linux Mint 18.3):
Больше о цветовых кодах в терминале BASH здесь . Возможно, есть какой-то способ узнать, какие цвета использует ваш терминал, но я не знаю, что это может быть.
В строке shebang строка
export
для включения в .bashrc становится:ВНИМАНИЕ, эти escape-коды "\ e" всегда должны быть заключены в "\ [... \]", в противном случае возврат строки будет полностью испорчен.
NB2, чтобы получить полный путь в любое время
конечно...
источник