7

Я пытаюсь настроить PS1 чтобы он отображал название ветви на git:

user.name:some/repo (master) $

Тем не менее, ничего, что я делаю, похоже, не работает. Даже когда я просто пытаюсь назначить PS1 напрямую, это не работает:

user.name:~ $ echo $PS1
\u:\w $
user.name:~ $ PS1='oh yeah'
user.name:~ $ echo $PS1
\u:\w $

Я делаю что-то неправильно? У меня нет прав для установки этой переменной? У меня есть синтаксическая ошибка?

Я на Mac OS X 10.8.

Я также попробовал:

user.name:~ $ echo $PS1
\u:\w $
user.name:~ $ export PS1='oh yeah'
user.name:~ $ echo $PS1
\u:\w $

Для справки:

user.name:~ $ $SHELL --version
GNU bash, version 3.2.48(1)-release (x86_64-apple-darwin12)
Copyright (C) 2007 Free Software Foundation, Inc.

Видимо PS1 чтения. Интересно.

user.name:~ $ readonly PS1
-bash: PS1: readonly variable

Как мне сделать это не только для чтения?

3 ответа3

2

Я бы проверил ваши rc-файлы, чтобы убедиться, что PS1 не определяется в них только для чтения.

попробуйте следующее:

user@server$ PS1='oh yeah :'
oh yeah :readonly PS1
oh yeah :PS1='different PS1 :'
bash: PS1: readonly variable
oh yeah :bash
user@server$ PS1='something else '
something else 

пытаться

grep -E 'PS1=' ~/.bashrc <other rc files>
2

Ты пытался

export PS1='oh yeah'

Источник

0

Удивительно, но это должно работать, и это точно не проблема разрешения.

Вы пробовали экспортировать двойные кавычки export PS1="oh yeah" вместо export PS1='oh yeah' ?

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