The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"изменить приглашение sh???"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"изменить приглашение sh???"
Сообщение от Виталий emailИскать по авторуВ закладки on 13-Дек-01, 15:56  (MSK)
Привет знатоки!
Как для user'а изменить приглашение sh, чтобы выводился текущий каталог???
  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "RE: изменить приглашение sh???"
Сообщение от LinuxLamer Искать по авторуВ закладки on 13-Дек-01, 16:07  (MSK)
>Привет знатоки!
>Как для user'а изменить приглашение sh,
>чтобы выводился текущий каталог???

сформулируй поточнее вопрос !!!

  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "RE: изменить приглашение sh???"
Сообщение от lavr emailИскать по авторуВ закладки on 13-Дек-01, 16:42  (MSK)
>Привет знатоки!
>Как для user'а изменить приглашение sh,
>чтобы выводился текущий каталог???

н-да. :(

общий вариант:

PS1="`hostname`:`pwd` >"

ну мне он нравится, посмотреть как отрабатывает
команда hostname в конкретной OS

FreeBSD: hostname выдает fqdn хоста, тогда:

PS1="`hostname | cut -f1 -d.`:`pwd` >"

вобщем, вариантов мб тьма, включая имя пользователя
номер текущей команды из history, текущее время
и тд и тп.

http://unix1.jinr.ru/~lavr/howtostart.html

PS. Надо отметить, man - замечательно прочищает
мозги и повышает интерес как к экспериментам,
так и к дальнейшему чтению man'ов.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "RE: изменить приглашение sh???"
Сообщение от Виталий emailИскать по авторуВ закладки on 14-Дек-01, 10:00  (MSK)
to lavr:

При указании в PS1 pwd - каталог выводится один раз, при загрузке, а при cd он не меняется так и остается тот в который зашел первый раз при регистрации!!! Что на это скажешь... К стати на твоей странице нет описания для sh, для csh как сделать тоже самое я разобрался, а вот для sh НЕ МОГУУУ!!! ПОМОГИТЕЕЕ!!!

  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "RE: изменить приглашение sh???"
Сообщение от Арлекин Искать по авторуВ закладки on 14-Дек-01, 13:21  (MSK)
Тебе ж сказали - man'ы читай!
У меня ( под bash ) сделано так.
В .profile строка:
PS1='\t @\h:\u/\W >'
Получишь приглашение: время@host:username/currPWD >
Избавляет от команды date.
Ну а как поправить сам допрешь.
ЧИТАЙ МАНЫ !!!
  Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "RE: изменить приглашение sh???"
Сообщение от Виталий emailИскать по авторуВ закладки on 14-Дек-01, 14:08  (MSK)
>Тебе ж сказали - man'ы читай!
>
>У меня ( под bash )
>сделано так.
>В .profile строка:
>PS1='\t @\h:\u/\W >'
>Получишь приглашение: время@host:username/currPWD >
>Избавляет от команды date.
>Ну а как поправить сам допрешь.
>
>ЧИТАЙ МАНЫ !!!

Я понимаю man'ы читай, а пояснить для sh слабо, не выходит так как ты говоришь!!! говорит Syntax error: end of file unexpected...

  Рекомендовать в FAQ | Cообщить модератору | Наверх

11. "RE: изменить приглашение sh???"
Сообщение от Арлекин Искать по авторуВ закладки on 14-Дек-01, 15:50  (MSK)
Мне нас...ть на твоё слабо. Если руки кривые, то не..р лезть. Для дураков: bash наследует sh. В bash то что я те прислал РАБОТАЕТ. А как прикрутить его к sh - ищи сам.
  Рекомендовать в FAQ | Cообщить модератору | Наверх

16. "RE: изменить приглашение sh???"
Сообщение от Antonio emailИскать по авторуВ закладки on 19-Дек-01, 19:10  (MSK)
>Для дураков: bash наследует sh.

Для Арлекина only. Не вдаваясь пока в отношения bash и sh. Фраза "А наследует свойства Б" означает, что свойства, присущие Б, присущи и А. Но не наоборот. Учите матчасть.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

12. "RE: изменить приглашение sh???"
Сообщение от lavr emailИскать по авторуВ закладки on 14-Дек-01, 19:50  (MSK)
>to lavr:
>
>При указании в PS1 pwd -
>каталог выводится один раз, при
>загрузке, а при cd он
>не меняется так и остается
>тот в который зашел первый
>раз при регистрации!!! Что на
>это скажешь... К стати на
>твоей странице нет описания для
>sh, для csh как сделать
>тоже самое я разобрался, а
>вот для sh НЕ МОГУУУ!!!
>ПОМОГИТЕЕЕ!!!
>

Да, к сожалению ты прав, резюме - стандартный
Bourne Shell (sh) не позволяет использовать
макро-подстановки в PS1(prompt) и не разбирает
его. Sorry что сразу не проверил, сам Steve Bourne
об этом написал, мало того, стандартно у sh
не было функций и алиасов, сейчас есть.

Вывод: заменить пользователям с sh - на bash или
ae, csh -> tcsh, чтобы использовать их расширенные
возможности, в том числе и prompt(PS1).

Примечание: не важно что создается у пользователя
в $HOME, этим можно управлять создав свой skel
со всеми настроечными файлами для пользователей.

Важное: пользователь root должен иметь статически
собранный SHELL, будь то csh/tcsh/bash

Видимо следует отдельный комментарий по этому
поводу написать: SHELLs, настройка среды пользователей и какой должен быть SHELL у root'а.
А ведь простой вопрос вроде.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "RE: изменить приглашение sh???"
Сообщение от Виталий emailИскать по авторуВ закладки on 14-Дек-01, 14:11  (MSK)
Скажите лучше как изменить shell, а то я для csh у root победил, а вот для sh немогуууу...


  Рекомендовать в FAQ | Cообщить модератору | Наверх

7. "А кто для root csh ставить???"
Сообщение от Vlad emailИскать по авторуВ закладки on 14-Дек-01, 14:18  (MSK)
Делать, что ли нечего?!!!!


  Рекомендовать в FAQ | Cообщить модератору | Наверх

8. "RE: изменить приглашение sh???"
Сообщение от Andrey Искать по авторуВ закладки on 14-Дек-01, 14:23  (MSK)
>Привет знатоки!
>Как для user'а изменить приглашение sh,
>чтобы выводился текущий каталог???

# file .tcshrc
set autolist
set shell=tcsh
set history=20 savehist=$history
set correct=all autocorrect
set prompt='%{\033[33;40m%}%n@%m(%B%{\033[33;40m%}%l%{\033[33;40m%}%b)%B%{\033[34;40m%} [%B%{\033[32;40m%}%h%{\033[34;40m%}]%b %{\033[35;40m%}ц%B%{\033[36;40m%}%#%{\033[37;40m%}%b %L' prompt2='%U%R%u: %L' prompt3='%B%{\033[31;40m%}Correct%{\033[37;40m%}%b: %B%R%b [yne]? %L'
set fignore=( .b .BAK .o )
set printexitvalue
set showdots
set cdpath=( . $HOME )
set watch=(all all)
set path=( . $HOME /bin /sbin /usr/local/bin /usr/bin /usr/sbin /usr/contrib/bin /usr/X11/bin /usr/ccs/bin )
set pager=/usr/contrib/bin/less

alias cwdcmd ls-F
alias l ls -F
alias ll ls -al
alias h history
alias dd "ps -ax |more"
alias phone     cu -l cuaa0
alias mc        /usr/local/bin/midc

complete set 'n/*/s/'
complete cd 'n/*/d/'
# end of file

Помещаешь в пользовательский каталог и прописываешь пользователю tcsh. Можешь поробовать именить .tcshrc на имя .cshrc (точно) .shrc(не точно). Use.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

9. "RE: изменить приглашение sh???"
Сообщение от Виталий emailИскать по авторуВ закладки on 14-Дек-01, 15:15  (MSK)
Почему ни кто не слышит!!! Я же говорю у меня не tcsh, а файл .shrc, тот пример файла который приведен говорит syntax error "(" unexpected...
  Рекомендовать в FAQ | Cообщить модератору | Наверх

10. "RE: изменить приглашение sh???"
Сообщение от Vlad emailИскать по авторуВ закладки on 14-Дек-01, 15:50  (MSK)
>Почему ни кто не слышит!!! Я
>же говорю у меня не
>tcsh, а файл .shrc, тот
>пример файла который приведен говорит
>syntax error "(" unexpected...

Такая ошибка возникает, если программируешь в csh, а запустить скрипт хочешь в sh. Почувствуй разницу...

  Рекомендовать в FAQ | Cообщить модератору | Наверх

13. "RE: изменить приглашение sh???"
Сообщение от Andrey Искать по авторуВ закладки on 18-Дек-01, 12:22  (MSK)
>Почему ни кто не слышит!!! Я
>же говорю у меня не
>tcsh, а файл .shrc, тот
>пример файла который приведен говорит
>syntax error "(" unexpected...


Надоел. Держи :

########## add this to .shrc file ###############
# # set prompt: ``username@hostname pwd$ ''
#
PS1="`whoami`@`hostname | sed 's/\..*//'` `pwd`"
#
case `id -u` in
        0) PS1="${PS1}# ";;
        *) PS1="${PS1}$ ";;
esac

# search path for cd(1)
# CDPATH=.:$HOME

########## end of file #######################

Это немного поправленный иснодный кусок файла .shrc, который идет по умолчанию для пользователя в FreeBSD. Посмотри в своей ОС-е, на 90% тоже самое. :)

Читайте исходники и мануалы!

Извини, если немного грубо. :)

  Рекомендовать в FAQ | Cообщить модератору | Наверх

14. "RE: изменить приглашение sh???"
Сообщение от lavr emailИскать по авторуВ закладки on 18-Дек-01, 16:23  (MSK)
>>Почему ни кто не слышит!!! Я
>>же говорю у меня не
>>tcsh, а файл .shrc, тот
>>пример файла который приведен говорит
>>syntax error "(" unexpected...
>
>
>Надоел. Держи :
>
>########## add this to .shrc file
>###############
># # set prompt: ``username@hostname pwd$
>''
>#
>PS1="`whoami`@`hostname | sed 's/\..*//'` `pwd`"
>#
>case `id -u` in
>      
>  0) PS1="${PS1}# ";;
>
>      
>  *) PS1="${PS1}$ ";;
>
> esac
>
># search path for cd(1)
># CDPATH=.:$HOME
>
>########## end of file #######################
>
>Это немного поправленный иснодный кусок файла
>.shrc, который идет по умолчанию
>для пользователя в FreeBSD. Посмотри
>в своей ОС-е, на 90%
>тоже самое. :)
>
>Читайте исходники и мануалы!
>
>Извини, если немного грубо. :)

не пойдет и работать не будет в Bourne-Shell,
один вариант - писать функцию для cd в
которой при каждом ее выполнении устанавливать
PS1 - извращение, и не во всех системах будет
работать, зависит от свежести-изменения родного
Bourne-Shell. Ибо изначальный Bourne-Shell
не поддерживал функций, алиасов и много еще чего.

Безпроигрышный вариант - собрать статический
Bash и всем у кого был /path/sh в качестве
интерпретатора, заменить на /path/bash.

Прим: пользователям можно и динамический bash,
а вот root'у или toor'у статический и чтобы он
был в /bin/bash или /sbin/bash - системо-зависимо.
У root'а  правильно оставить родной shell, а вот
toor'у удобнее всего сделать bash-static

  Рекомендовать в FAQ | Cообщить модератору | Наверх

17. "RE: изменить приглашение sh???"
Сообщение от Andrey Искать по авторуВ закладки on 20-Дек-01, 17:01  (MSK)
>не пойдет и работать не будет
>в Bourne-Shell,
>один вариант - писать функцию для
>cd в
>которой при каждом ее выполнении устанавливать
>
>PS1 - извращение, и не во
>всех системах будет
>работать, зависит от свежести-изменения родного
>Bourne-Shell. Ибо изначальный Bourne-Shell
>не поддерживал функций, алиасов и много
>еще чего.
>
>Безпроигрышный вариант - собрать статический
>Bash и всем у кого был
>/path/sh в качестве
>интерпретатора, заменить на /path/bash.
>
>Прим: пользователям можно и динамический bash,
>
>а вот root'у или toor'у статический
>и чтобы он
>был в /bin/bash или /sbin/bash -
>системо-зависимо.
> У root'а  правильно оставить
>родной shell, а вот
>toor'у удобнее всего сделать bash-static


  Рекомендовать в FAQ | Cообщить модератору | Наверх

18. "RE: изменить приглашение sh???"
Сообщение от Andrey Искать по авторуВ закладки on 20-Дек-01, 17:07  (MSK)
>
>не пойдет и работать не будет
>в Bourne-Shell,
>один вариант - писать функцию для
>cd в
>которой при каждом ее выполнении устанавливать
>
>PS1 - извращение, и не во
>всех системах будет
>работать, зависит от свежести-изменения родного
>Bourne-Shell. Ибо изначальный Bourne-Shell
>не поддерживал функций, алиасов и много
>еще чего.
>
>Безпроигрышный вариант - собрать статический
>Bash и всем у кого был
>/path/sh в качестве
>интерпретатора, заменить на /path/bash.
>
>Прим: пользователям можно и динамический bash,
>
>а вот root'у или toor'у статический
>и чтобы он
>был в /bin/bash или /sbin/bash -
>системо-зависимо.
> У root'а  правильно оставить
>родной shell, а вот
>toor'у удобнее всего сделать bash-static

А может быть спросить у человека, что у него стоит? А потом, исходя из ответа, посоветовать что ему надо менять. :)

  Рекомендовать в FAQ | Cообщить модератору | Наверх

19. "RE: изменить приглашение sh???"
Сообщение от lavr emailИскать по авторуВ закладки on 20-Дек-01, 20:24  (MSK)
>А может быть спросить у человека,
>что у него стоит? А
>потом, исходя из ответа, посоветовать
>что ему надо менять. :)
>

несомненно, только увы, человек кроме как
.shrc ничего объяснить не может :-(


  Рекомендовать в FAQ | Cообщить модератору | Наверх

15. "RE: изменить приглашение sh???"
Сообщение от holdman Искать по авторуВ закладки on 19-Дек-01, 18:28  (MSK)
>Привет знатоки!
>Как для user'а изменить приглашение sh,
>чтобы выводился текущий каталог???

export PS1="[\u@\h \W]\\$ "

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру