Відображення нового рядка в підказці


53

Я хочу додати новий рядок у кожному запиті. Замість того, щоб курсор показав на рядку як name@machine:~$ _,

Я хочу, щоб це було в наступному рядку, як-от:

name@machine:~$
_

Дякую.

Відповіді:


69
  • Відкрийте файл ~/.bashrc(або /etc/bash.bashrcякщо він повинен працювати глобально для всіх користувачів).

  • Знайдіть названу змінну PS1.

  • Просто поставте \nв кінці значення PS1змінної.


18
Найпростіший спосіб зробити це - додати PS1 = "$ PS1 \ n" внизу вашого файлу ~ / .bashrc.
Денніс ВанМетер

3
Здогадайтесь, що це простіше в обслуговуванні - чому б не зробити це новою відповіддю? :)
htorque

так, я це зробив. було занадто багато рядків для додавання \ n до, тому я створив нову змінну.
theTuxRacer

8

Я вважаю за краще використовувати спеціальний .bashrcфайл

Спочатку додайте до ~/.bashrcфайлу такі рядки :

##
## INCLUDE CUSTOM `.bashrc` CODE
##
if [ -f ~/.bashrc_custom ]; then
    . ~/.bashrc_custom
fi

Створіть спеціальний файл:

touch ~/.bashrc_custom`

Нарешті відкрийте його і введіть такі рядки:

# File: $HOME/.bashrc_custom
# THIS FILE IS A USER-CUSTOM BASHRC FILE TO KEEP CLEAN THE DEFAULT ~/.barshrc FILE.
# PUT THERE ANY CUSTOM CODE MANUALLY ADDED BY YOU


# Add a new line at the end of the command prompt
#PS1=${PS1}\\n
PS1=${PS1%?}
PS1=${PS1%?}\n'$ '

Наступний відкритий сеанс оболонки виглядатиме так:

user@host:~
$ <your-next-command-will-be-rendered-here>

4
Чому ви рекомендуєте використовувати нестандартний файл .bashrc? Чи не саме так .bashrc у вашому домашньому каталозі існує? Я розумію, що ви можете використовувати та змінювати згенерований за замовчуванням .bashrc, але ніж тоді, коли ви хочете використовувати .bashrc на інших ОС, ви не можете, оскільки ви залежите від файлу .bashrc за замовчуванням, і якщо він не той, він може поводитися по-різному.
Міхал Бернхард
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.