Я хотел бы разбить мою подсказку bash на две строки, если путь слишком длинный, чтобы введенная команда всегда подходила.

Моя текущая подсказка выглядит следующим образом: ~/go/src/asd$ ls -lah , поэтому, если путь слишком длинный, команды должны все время переносить строки. Таким образом, я хотел бы условно сделать это двухстрочной подсказкой, если путь слишком длинный. Как я могу это сделать?

1 ответ1

0

Добавьте в конец вашего файла ~/.bashrc :

path_len() {
  max_path=20
  currentPath=$(pwd)
  pathLen=${#currentPath}
  [ ${pathLen} -gt ${max_path} ] && printf "\n:"
}

PS1="\n\[\033[1;31m\]\u@\h: \[\033[32m\]\w\$(path_len)\[\033[0m\] -> "

и измените переменную max_path в функции path_len на то магическое значение, которое вы назвали "too long";)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .