В даний час це:
michael@Castle2012-Ubuntu-laptop01:~/Dropnot/webs/rails_v3/linker/spec/controllers$
Поза перейменуванням моєї машини та структури каталогів ...
Як я можу зробити так, щоб це було щось подібне:
michael:controllers$
В даний час це:
michael@Castle2012-Ubuntu-laptop01:~/Dropnot/webs/rails_v3/linker/spec/controllers$
Поза перейменуванням моєї машини та структури каталогів ...
Як я можу зробити так, щоб це було щось подібне:
michael:controllers$
Відповіді:
Просто введіть PS1='\u:\W\$ '
і натисніть Enter.
У своєму ~/.bashrc
знайдіть такий розділ:
if ["$ color_prompt" = так]; тоді PS1 = '$ {debian_chroot: + ($ debian_chroot)} \ [\ 033 [01; 32m \] \ u @ \ h \ [\ 033 [00m \]: \ [\ 033 [01; 34m \] \ w \ [\ 033 [00м \] \ $ ' ще PS1 = '$ {debian_chroot: + ($ debian_chroot)} \ u @ \ h: \ w \ $' фі
Вийміть @\h
і замініть \w
велику літеру \W
, щоб вона стала:
if ["$ color_prompt" = так]; тоді PS1 = '$ {debian_chroot: + ($ debian_chroot)} \ [\ 033 [01; 32m \] \ u \ [\ 033 [00m \]: \ [\ 033 [01; 34m \] \ W \ [\ 033 [00м \] \ $ ' ще PS1 = '$ {debian_chroot: + ($ debian_chroot)} \ u: \ W \ $' фі
Збережіть, вийдіть, закрийте термінал і запустіть інший, щоб побачити результат.
HOST='\033[02;36m\]\h' HOST=' '$HOST parse_git_branch () { git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/'; } TIME='\033[01;31m\]\t \033[01;32m\]' LOCATION=' \033[01;34m\]
pwd | sed "s # (/ [^ /] \ {1, \} / [^ /] \ {1, \} / [^ /] \ {1, \} /). * (/ [^ /] \ { 1, \} / [^ /] \ {1, \}) / \ {0,1 \} # \ 1_ \ 2 # г "' BRANCH=' \033[00;33m\]$(parse_git_branch)\[\033[00m\]\n\$ ' PS1=$TIME$USER$HOST$LOCATION$BRANCH PS2='\[\033[01;36m\]>'
Запустіть цей код у поточному терміналі
PROMPT_DIRTRIM=3
Тепер підказка bash покаже лише останні три назви каталогів. Ви можете вибрати 1, щоб відображати лише поточний каталог. Більше інформації розміщено в документації GNU .
Ефект:
/var/lib/apt/lists# PROMPT_DIRTRIM=3
/.../lib/apt/lists#
Якщо ви хочете зробити це назавжди, додайте на початку такий рядок ~/.bashrc
:
PROMPT_DIRTRIM=3
або інше число, що перевищує нуль.
promptdir() { PROMPT_DIRTRIM=$1; }
Це моє бажане швидке налаштування:
додано в ~/.bashrc
PS1='[\u@\h \W]\$ '
це виглядає приблизно так:
[user@hostname dirname]$
(з пробілом після $
знака)
Особисто я вважаю за краще бачити лише поточну папку в запиті bash. Я можу це зробити за допомогою наступної команди:
PS1='\W\$ '
Якщо ви хочете, щоб він набув чинності після кожного запуску, додайте вищевказану команду у свій ~ / .bashrc.
Я усвідомлюю, що це дуже старе, але оскільки ніхто не запропонував створити псевдонім, я зрозумів, що опублікую. Використовуючи послідовність втечі Bash Prompt, я зробив псевдонімshorten
В ~/.bash_aliases
тут ви помітите $ Синього вар , щоб встановити швидкий колір , який ви можете опустити або змінити на основі переваг , я також очистити термінал при виклику вкоротити.
alias c='clear'
alias shorten='PS1="$Blue$USER:\W$ "&& c'
Для досягнення бажаного рядка підказок OP:
alias shorten='PS1="$USER:\W$ "'
Я маю кольори, визначені в ~/.bashrc
копії та вставлені з https://wiki.archlinux.org/index.php/Color_Bash_Prompt . Зі сторони, що з кольорами ansi-коду? Я розгублений, просто дивлячись на це.
Blue='\e[0;34m' # Blue
Я написав функцію, яку ви можете змінити відповідно до ваших потреб:
function termprompt() {
PS1="${PS1//@\\h/}" # Remove @host
PS1="${PS1//\\w/\\W}" # Change from full directory to last name
}
Розташуйте цю функцію в нижній частині або поблизу ~/.bashrc
після того, як PS1
лінія була повністю обчислена.
Ви вводите termprompt
будь-коли, коли хочете скоротити своє запит, або termprompt
зателефонували знизу ~/.bashrc
на постійність.
Перевагою цієї методики перед багатьма іншими відповідями є .bashrc
налаштування PS1
чотирма різними способами (xterm + no-color, xterm + color, no-xterm + no-color, no-xterm + color). Ця відповідь підтримує всі чотири поточні методи та, мабуть, і майбутні методи.
Ще одна перевага полягає в тому, що цей метод має менш складні контрольні коди, щоб їх переходити, щоб вставити зміни.