time management и bash

    Иногда весьма мелкие мелочи дают весьма ощутимый эффект. Настолько ощутимые, что ощущения заставили установить Firefox и поделится этим с общественностью. С недавних пор начал использовать такой PS1:

    PS1='\D{%H.%M} \u@\h \w\n\$ '

    Или с раскраской:

    PS1='\[\033[02;34m\]\D{%H.%M} \u@\h\[\033[00m\] \w\n\$ '

    В итоге, мозг начинает получать информацию о том, сколько времени и на какую именно активность тратится в ходе работы. Что очень помогает (imho, даже на чисто подсознательном уровне) более эффективно распределять своё время. И, что ценно при таком подходе к делу, отслеживание времени не отвлекает от производства. В отличии от специализированных решений в виде красивого web-2.0 или очаровательного GUI, где нужно своими же руками осознанно следить за собой. Кроме того, можно сразу видеть много строчек с информацией своей активности и вести журнал сессии без проблем. Вобщем вот.

    P.S. Это, кстати, одна из тех фишечек, которая возможна только в command-line интерфейсе. И непонятно, почему сторонники WIMP и CL не соберутся как-нибудь и не выберут из обоих подходов всё самое лучше, и не смешают всё в удобных пропорциях?

    P.P.S. Для новичков в bash: PS1 лучше всего задавать в $HOME/.bashrc

    image
    Поделиться публикацией
    Похожие публикации
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама
    Комментарии 26
    • +4
      Ну сделайте же скриншот. Как это в итоге выглядит? Многим непонятно что значит \u@\h[\033blablabla :)
      • +1
        По моему лично мнению, это к " time management" не имеет отношения, так как у меня постоянно открыто по 10 консолей и точно отслеживать время просто не получиться.
        • 0
          Ну… Идеал достижим в редких случаях. Я же просто поделился 'ещё одной штукой, которая лично мне помогает'.
        • +2
          Блин, не знал про установку цветов таким образом :)
          Не привычно, когда после «приветствия» корсор на следующую строку переносится, так что сделал немного иначе
          PS1='[\u@\h \[\033[01;30m\]\D{%H:%M}\[\033[00m\] \w]\$ '

          в результате:
          [george@compehter 12:18 /www]$
          время тёмно-серым цветом
          • +1
            Глянь мой пример ниже — когда кроме user@host в приглашение выносится ещё куча инфы — для собсно команды остаётся совсем немного места в строке. Посему приглашение к вводу команды с новой строки — рулит ИМХО.
          • 0
            Спасибо, интересно!
            • 0
              у меня так PS1='[\u@\h \[\033[01;30m\]\D{%H:%M}\[\033[00m\] \w]\$ '
              • +3
                простите, вот так
                PS1='\t\[\033[01;31m\] \h\[\033[01;34m\] \W \$\[\033[00m\] '
                • 0
                  Больше всего подошел ваш вариант. Немного изменил, поставил. Спасибо :)
                  • 0
                    Аналогично Vas3k — немного изменил ваш вариант. Он больше подходит. Спасибо
                  • +3
                    Для тех кому лень: =)
                    Выглядит это дело у меня примерно так:

                    • +1
                      На домашней машине PS1 такая:
                      [-= \[\033[01;37m\]vk\[\033[00m\] — \[\033[01;33m\]\t\[\033[00m\] =-] \w\n$
                      [-= vk - 11:48:43 =-] /home/ftp
                      $

                      На работе — слегкаа расширенная:
                      [-= \[\033[01;31m\]\H\[\033[00m\] — \[\033[01;34m\]$ip\[\033[00m\] — \[\033[01;33m\]$kv\[\033[00m\] =- \t ]\n[-= \u — \w =-]\n\$
                      [-= server.domain.com - x.x.x.x - 2.6.26.6-g-r13 =- 01:56:33 ]
                      [-= root - ~ =-]
                      #

                      $kv и $ip определяются в том же .bashrc
                      • 0
                        когда то это было первым что я сделал начав потиху приобщаться к линуксу
                        • 0
                          «Это, кстати, одна из тех фишечек, которая возможна только в command-line интерфейсе.»

                          Скромно замечу, что это одна из тех фишечек, которая специально для command-line и задумана. В оконной среде эта фишечка болтается в углу экрана еще начиная с Norton Commander.

                          «И непонятно, почему сторонники WIMP и CL не соберутся как-нибудь и не выберут из обоих подходов всё самое лучше, и не смешают всё в удобных пропорциях?»

                          Уже смешали: NEXTStep, Mac OS X.
                          • 0
                            И что, вы на эту фишечку смотрите, и записываете за собой времена выполнения тех или иных действий? Дело же не в том, что это часы, а в том, что они дают мне представление о моей же активности.

                            В Mac OS X и NEXTStep ничего не смешано. Есть окошко с терминалом, и есть… Ничего особенного, imho.
                          • 0
                            Мое:
                            \[\033[0;36m\][\A] \[\033[1;32m\]\u@\h \[\033[1;34m\]\w $\[\033[0;37m\]

                            if test $(whoami) == 'root':
                            \[\033[0;36m\][\A] \[\033[1;31m\]\u@\h \[\033[1;34m\]\w #\[\033[0;37m\]

                            • +1
                              а у меня получилось во так

                              PROMPT_COLOR='0;36m'
                              # If I am root, set the prompt to bright red
                              if [ ${UID} -eq 0 ]; then
                              PROMPT_COLOR='0;33m'
                              fi
                              PS1='\t\[\e[${PROMPT_COLOR}\] \h\[\e[0;00m\] \W \$\[\e[0;00m\] '

                              окрашиваем хостнейм в другой более яркий цвет когда заходит под рутом.

                              скриншот

                              подробности написал у себя на сайте

                              • 0
                                извиняюсь, хтмл теги не сработали скрин
                                sairo.org/sites/default/files/promt.jpg
                                описал здесь sairo.org/node/12
                              • 0
                                Так и хочется сказать: «БОЯНИЩЕ!».
                                Ну да ладно, имхо толку от часов в консоли нет, у меня промпт состоит только из текущей директории (в zsh можно кстати делать и правый промпт). Что для меня действительно полезно, так это текущая директория в заголовке терминала и (!) директория + выполняемая комманда. Ну и вообще zsh рекомендую, если надо — конфиги выложу.
                                • +1
                                  Без обид, но дико отдает красноглазием. И это Linux явно не для всех
                                  • 0
                                    для новичков, PS1 лучше задавать в ~/.bashrc :-)
                                    • 0
                                      Так же делал в свое время, потом отказался: обновление только после выполнения очередной команды, да и не всегда консоль на экране висит.
                                      • 0
                                        Мне кажется, что как только хостов, на которых активно работаешь, становится больше десятка — все отступления от дефолта воспринимаются несколько по другому. Тем более что ценность часов, которые не ходят, сомнительна. Хотя демонстрация того, что эту строчку можно менять таким образом — полезна.
                                        screen ещё было бы здорово протюнить, там наврняка невероятные навороты можно смастерить.
                                        • 0
                                          Просто класс!
                                          Огромное-огромное спасибо, mikhanoid!!!
                                          • 0
                                            WHITE='\[\033[1;37m\]'
                                            LIGHTGRAY='\[\033[0;37m\]'
                                            GRAY='\[\033[1;30m\]'
                                            BLACK='\[\033[0;30m\]'
                                            RED='\[\033[0;31m\]'
                                            LIGHTRED='\[\033[1;31m\]'
                                            GREEN='\[\033[0;32m\]'
                                            LIGHTGREEN='\[\033[1;32m\]'
                                            BROWN='\[\033[0;33m\]'
                                            YELLOW='\[\033[1;33m\]'
                                            BLUE='\[\033[0;34m\]'
                                            LIGHTBLUE='\[\033[1;34m\]'
                                            PURPLE='\[\033[0;35m\]'
                                            PINK='\[\033[1;35m\]'
                                            CYAN='\[\033[0;36m\]'
                                            LIGHTCYAN='\[\033[1;36m\]'
                                            NORMAL='\[\033[0m\]'

                                            SELECT1=«if [ \$? = 0 ]; then echo -n \»${SMILEY}\"; else echo -n \"${FROWNY}\"; fi;"
                                            SELECT2=«if [ -w \»${PWD}\" ]; then echo -n \"${LIGHTBLUE}\w\"; else echo -n \"${LIGHTRED}\w\"; fi ;"

                                            PS1="${RESET}${LIGHTRED}\u\`${SELECT1}\`${GRAY}\h \`${SELECT2}\` ${YELLOW}\\$ ${LIGHTGREEN}"

                                            root@home /usr/local/etc/asterisk #
                                            плюс цветом определяется код возврата последней отработанной комманды
                                            • 0
                                              SMILEY="${YELLOW}@${NORMAL}"
                                              FROWNY="${LIGHTBLUE}@${NORMAL}"

                                            Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.