Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

agnos.is Forums

  1. Home
  2. Linux
  3. Share your Bash prompts!

Share your Bash prompts!

Scheduled Pinned Locked Moved Linux
linux
49 Posts 37 Posters 241 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • kalcifer@sh.itjust.worksK [email protected]

    I'm looking for inspiration for a custom Bash prompt^[1]^. I'd love to see yours! 😊

    ::: spoiler References

    1. Type: Documentation. Title: "Bash Reference Manual". Publisher: Gnu Project. Edition: 5.2. Published: 2022-09-19. Accessed: 2025-03-21T02:46Z. URI: https://www.gnu.org/software/bash/manual/html_node/index.html.
      • §6.9 "Controlling the Prompt". URI: https://www.gnu.org/software/bash/manual/html_node/Controlling-the-Prompt.html.
        :::
    deuxchevaux@lemmy.worldD This user is from outside of this forum
    deuxchevaux@lemmy.worldD This user is from outside of this forum
    [email protected]
    wrote on last edited by
    #12

    Mine is simple (inspired by Kali Linux, if that's even correct)
    PS1='\[\033[0;32m\]┌──[\t] (\u@\h)-[\w]\n└─$ \[\033[0m\]'

    1 Reply Last reply
    0
    • hallettj@leminal.spaceH [email protected]

      I use Starship

      E This user is from outside of this forum
      E This user is from outside of this forum
      [email protected]
      wrote on last edited by
      #13

      Same. I guess, this is the Starship thread now. My config:

      I adapted it from the Gruvbox Rainbow theme.
      I can post my config, if anyone wants specifically that. (It does kind of assume a light background, though.)

      F 1 Reply Last reply
      0
      • kalcifer@sh.itjust.worksK [email protected]

        I'm looking for inspiration for a custom Bash prompt^[1]^. I'd love to see yours! 😊

        ::: spoiler References

        1. Type: Documentation. Title: "Bash Reference Manual". Publisher: Gnu Project. Edition: 5.2. Published: 2022-09-19. Accessed: 2025-03-21T02:46Z. URI: https://www.gnu.org/software/bash/manual/html_node/index.html.
          • §6.9 "Controlling the Prompt". URI: https://www.gnu.org/software/bash/manual/html_node/Controlling-the-Prompt.html.
            :::
        rivalarrival@lemmy.todayR This user is from outside of this forum
        rivalarrival@lemmy.todayR This user is from outside of this forum
        [email protected]
        wrote on last edited by
        #14

        I didn't even know I needed to edit my prompt, but now I don't know how I have lived with it for so long.

        1 Reply Last reply
        0
        • mike_wooskey@lemmy.thewooskeys.comM [email protected]

          Mine shows the user and host, git commit and branch, docker context and directory, color coded based on status of git:

          [root@server001|G:19e526e@(master)|D:myContext|currentDir] $

          ## PS1 adapted from https://gist.github.com/xenji/2292341
          ps1_generator() {
              # docker context inspect --format '{{ .Name }}'
              Time12h="\T"; Time12a="\@"; ShortHost="\h"; Username="\u";
              PathShort="\W"; PathFull="\w"; NewLine="\n"; Jobs="\j";
              test -f ~/.config/git-prompt.sh || \
                  curl -L https://raw.github.com/git/git/master/contrib/compl
          etion/git-prompt.sh \
                       > ~/.config/git-prompt.sh
              source ~/.config/git-prompt.sh
              Color_Off="\[\033[0m\]"; IBlack="\[\033[0;90m\]"; BWhite="\[\03
          3[1;37m\]"; BGreen="\[\033[1;32m\]";
              BIRed="\[\033[1;91m\]"; BIWhite="\[\033[1;97m\]"; BIPurple="\[\
          033[1;95m\]"; BIBlue="\[\033[1;94m\]";
              GIT_PS1='$(git branch &>/dev/null;\
          if [ $? -eq 0 ]; then \
            echo "$(echo `git status` | \grep "nothing to commit" > /dev/null
           2>&1; \
            DIRTY="$?"; \
            HEADREV=`git log --pretty=%h -n 1`; \
            echo -n "|G:'${BWhite}'$HEADREV"; \
            if [ "$DIRTY" -eq "0" ]; then \
              # @4 - Clean repository - nothing to commit
              echo "@'${BGreen}'"$(__git_ps1 "(%s)"); \
            else \
              # @5 - Changes to working tree
              echo "'${BIBlue}'@'${BIRed}'"$(__git_ps1 "{%s}"); \
            fi)'${Color_Off}'"; \
          else \
            # @2 - Prompt when not in GIT repo
            echo ""; \
          fi)'
              if docker context inspect >/dev/null 2>&1; then
                  DOCKER_PS1='|D:'${BIBlue}'$(docker context inspect --format
           "{{ .Name }}")'${Color_Off}
              fi
              USER_PS1=${BIPurple}${Username}'@'${ShortHost}${Color_Off}
              PATH_PS1='|'${BWhite}${PathShort}${Color_Off}
              export PS1='['${USER_PS1}${GIT_PS1}${DOCKER_PS1}${PATH_PS1}'] $
           '
          }
          ps1_generator && unset -f ps1_generator
          
          G This user is from outside of this forum
          G This user is from outside of this forum
          [email protected]
          wrote on last edited by
          #15

          Are you dowloading and sourcing a file from the internet on your prompt? That sounds a bit scary!

          mike_wooskey@lemmy.thewooskeys.comM 1 Reply Last reply
          0
          • kalcifer@sh.itjust.worksK [email protected]

            I'm looking for inspiration for a custom Bash prompt^[1]^. I'd love to see yours! 😊

            ::: spoiler References

            1. Type: Documentation. Title: "Bash Reference Manual". Publisher: Gnu Project. Edition: 5.2. Published: 2022-09-19. Accessed: 2025-03-21T02:46Z. URI: https://www.gnu.org/software/bash/manual/html_node/index.html.
              • §6.9 "Controlling the Prompt". URI: https://www.gnu.org/software/bash/manual/html_node/Controlling-the-Prompt.html.
                :::
            Z This user is from outside of this forum
            Z This user is from outside of this forum
            [email protected]
            wrote on last edited by
            #16

            I use zsh, but my old Bash prompt looks almost the same ash my Zsh prompt. Sorry, no screenshot, but here's the code:

            export PS1='\[\033[01;34m\][\[\033[01;37m\] \W\[\033[01;34m\]]\$\033[01;34m\] $(git branch 2>/dev/null | grep '^*' | colrm 1 2)\n\033[01;34m└─>\033[37m '
            
            1 Reply Last reply
            0
            • kalcifer@sh.itjust.worksK [email protected]

              I'm looking for inspiration for a custom Bash prompt^[1]^. I'd love to see yours! 😊

              ::: spoiler References

              1. Type: Documentation. Title: "Bash Reference Manual". Publisher: Gnu Project. Edition: 5.2. Published: 2022-09-19. Accessed: 2025-03-21T02:46Z. URI: https://www.gnu.org/software/bash/manual/html_node/index.html.
                • §6.9 "Controlling the Prompt". URI: https://www.gnu.org/software/bash/manual/html_node/Controlling-the-Prompt.html.
                  :::
              N This user is from outside of this forum
              N This user is from outside of this forum
              [email protected]
              wrote on last edited by
              #17

              Mine's pretty simple:

              ## .bashrc
              export BLA=$(tput setaf 0) # Black
              export RED=$(tput setaf 1) # Red
              export GRE=$(tput setaf 2) # Green
              export YEL=$(tput setaf 3) # Yellow
              export BLU=$(tput setaf 4) # Blue
              export MAG=$(tput setaf 5) # Magenta
              export CYA=$(tput setaf 6) # Cyan
              export WHI=$(tput setaf 7) # White
              
              export BOL=$(tput bold)    # Bold
              export ITA=$(tput sitm)    # Italic
              export UL=$(tput smul)     # Underline
              export NC=$(tput sgr0)     # No color & format
              
              _branch() {
                  local branch=$(__git_ps1 "%s")
                  if [[ -z $branch ]]; then
                      printf "${BLA}null${NC}"
                  else 
                      printf "${CYA}$branch"
                  fi
              }
              
              PS1='.\[$(_pwd)\] \[$BLA\]〜 \[$MAG\]git\[$BLA\]:\[$(_branch)\] \n \[$NC$CYA\]\! \[$MAG\]\$ \[$NC\]'
              
              ## .inputrc
              
              set vi-ins-mode-string \1\e[34m\2.INS
              set vi-cmd-mode-string \1\e[33m\2.CMD
              
              1 Reply Last reply
              0
              • kalcifer@sh.itjust.worksK [email protected]

                I'm looking for inspiration for a custom Bash prompt^[1]^. I'd love to see yours! 😊

                ::: spoiler References

                1. Type: Documentation. Title: "Bash Reference Manual". Publisher: Gnu Project. Edition: 5.2. Published: 2022-09-19. Accessed: 2025-03-21T02:46Z. URI: https://www.gnu.org/software/bash/manual/html_node/index.html.
                  • §6.9 "Controlling the Prompt". URI: https://www.gnu.org/software/bash/manual/html_node/Controlling-the-Prompt.html.
                    :::
                M This user is from outside of this forum
                M This user is from outside of this forum
                [email protected]
                wrote on last edited by
                #18

                I’m using fish and the default is enough for anybody. 😁

                azzk1kr@feddit.nlA crmsnbleyd@sopuli.xyzC plutoniumacid@lemmy.worldP 3 Replies Last reply
                0
                • E [email protected]

                  Same. I guess, this is the Starship thread now. My config:

                  I adapted it from the Gruvbox Rainbow theme.
                  I can post my config, if anyone wants specifically that. (It does kind of assume a light background, though.)

                  F This user is from outside of this forum
                  F This user is from outside of this forum
                  [email protected]
                  wrote on last edited by
                  #19

                  I like the timer and the error icon on a fail.
                  I can't recall how often I think: damn this is taking too long. I should've timed the command

                  1 Reply Last reply
                  0
                  • kalcifer@sh.itjust.worksK [email protected]

                    I'm looking for inspiration for a custom Bash prompt^[1]^. I'd love to see yours! 😊

                    ::: spoiler References

                    1. Type: Documentation. Title: "Bash Reference Manual". Publisher: Gnu Project. Edition: 5.2. Published: 2022-09-19. Accessed: 2025-03-21T02:46Z. URI: https://www.gnu.org/software/bash/manual/html_node/index.html.
                      • §6.9 "Controlling the Prompt". URI: https://www.gnu.org/software/bash/manual/html_node/Controlling-the-Prompt.html.
                        :::
                    winety@lemmy.zipW This user is from outside of this forum
                    winety@lemmy.zipW This user is from outside of this forum
                    [email protected]
                    wrote on last edited by
                    #20

                    Mine's really simple; I just make the path bold and yellow:

                    My Bash prompt

                    What I like to do is change the colour depending on the machine I ssh into, e.g. make the path red on my Raspberry Pi.

                    1 Reply Last reply
                    0
                    • M [email protected]

                      I’m using fish and the default is enough for anybody. 😁

                      azzk1kr@feddit.nlA This user is from outside of this forum
                      azzk1kr@feddit.nlA This user is from outside of this forum
                      [email protected]
                      wrote on last edited by
                      #21

                      Fish is a really great shell for daily use. There's so much built in, its scripting language is better (not portable though if someone else does not have fish).

                      M 1 Reply Last reply
                      0
                      • azzk1kr@feddit.nlA [email protected]

                        Fish is a really great shell for daily use. There's so much built in, its scripting language is better (not portable though if someone else does not have fish).

                        M This user is from outside of this forum
                        M This user is from outside of this forum
                        [email protected]
                        wrote on last edited by
                        #22

                        By now, enough people have fish that you can basically assume those scripts being “portable”. Far better than nushell or xonsh - which are both pretty advanced shells but other tools lack support for them, e.g. Midnight Commander.

                        M 1 Reply Last reply
                        0
                        • G [email protected]

                          Are you dowloading and sourcing a file from the internet on your prompt? That sounds a bit scary!

                          mike_wooskey@lemmy.thewooskeys.comM This user is from outside of this forum
                          mike_wooskey@lemmy.thewooskeys.comM This user is from outside of this forum
                          [email protected]
                          wrote on last edited by
                          #23

                          Well, yeah, but it's git:
                          https://raw.github.com/git/git/master/contrib/completion/git-prompt.sh

                          My thinking is that I trust git on my computer, so I trust downloading from their repo.

                          But you're right. I should revisit this and see if it's even necessary.

                          T 1 Reply Last reply
                          0
                          • hallettj@leminal.spaceH [email protected]

                            I use Starship

                            mike_wooskey@lemmy.thewooskeys.comM This user is from outside of this forum
                            mike_wooskey@lemmy.thewooskeys.comM This user is from outside of this forum
                            [email protected]
                            wrote on last edited by
                            #24

                            Starships looks very interesting! I'm going to check it out. Thanks!

                            1 Reply Last reply
                            0
                            • M [email protected]

                              I’m using fish and the default is enough for anybody. 😁

                              crmsnbleyd@sopuli.xyzC This user is from outside of this forum
                              crmsnbleyd@sopuli.xyzC This user is from outside of this forum
                              [email protected]
                              wrote on last edited by
                              #25

                              I love it! You get git and virtual env integration for free 🙂

                              1 Reply Last reply
                              0
                              • kalcifer@sh.itjust.worksK [email protected]

                                I'm looking for inspiration for a custom Bash prompt^[1]^. I'd love to see yours! 😊

                                ::: spoiler References

                                1. Type: Documentation. Title: "Bash Reference Manual". Publisher: Gnu Project. Edition: 5.2. Published: 2022-09-19. Accessed: 2025-03-21T02:46Z. URI: https://www.gnu.org/software/bash/manual/html_node/index.html.
                                  • §6.9 "Controlling the Prompt". URI: https://www.gnu.org/software/bash/manual/html_node/Controlling-the-Prompt.html.
                                    :::
                                D This user is from outside of this forum
                                D This user is from outside of this forum
                                [email protected]
                                wrote on last edited by
                                #26

                                $ or # , depending on whether I'm root.

                                1 Reply Last reply
                                0
                                • kalcifer@sh.itjust.worksK [email protected]

                                  I'm looking for inspiration for a custom Bash prompt^[1]^. I'd love to see yours! 😊

                                  ::: spoiler References

                                  1. Type: Documentation. Title: "Bash Reference Manual". Publisher: Gnu Project. Edition: 5.2. Published: 2022-09-19. Accessed: 2025-03-21T02:46Z. URI: https://www.gnu.org/software/bash/manual/html_node/index.html.
                                    • §6.9 "Controlling the Prompt". URI: https://www.gnu.org/software/bash/manual/html_node/Controlling-the-Prompt.html.
                                      :::
                                  T This user is from outside of this forum
                                  T This user is from outside of this forum
                                  [email protected]
                                  wrote on last edited by
                                  #27

                                  I like Liquid Prompt[1] (A useful adaptive prompt for Bash & Zsh) Examples:

                                  θ70° 2z termight@zone51:~ $ vi .bashrc

                                  θ71° 2z termight@zone51:~/docker/invidious master(+34/-17)* ±

                                  [1] https://github.com/liquidprompt/liquidprompt

                                  1 Reply Last reply
                                  0
                                  • M [email protected]

                                    I’m using fish and the default is enough for anybody. 😁

                                    plutoniumacid@lemmy.worldP This user is from outside of this forum
                                    plutoniumacid@lemmy.worldP This user is from outside of this forum
                                    [email protected]
                                    wrote on last edited by
                                    #28

                                    I recently started with fish and dislike that I can't drop bash commands into it because it parses differently. That is enough to annoy me to uninstall.

                                    M 1 Reply Last reply
                                    0
                                    • ikidd@lemmy.worldI [email protected]

                                      That's a warcrime.

                                      plutoniumacid@lemmy.worldP This user is from outside of this forum
                                      plutoniumacid@lemmy.worldP This user is from outside of this forum
                                      [email protected]
                                      wrote on last edited by
                                      #29

                                      How so? What does this do?

                                      B 1 Reply Last reply
                                      0
                                      • hallettj@leminal.spaceH [email protected]

                                        I use Starship

                                        B This user is from outside of this forum
                                        B This user is from outside of this forum
                                        [email protected]
                                        wrote on last edited by
                                        #30

                                        Yeah I’m gonna check this out at work next week for sure.

                                        1 Reply Last reply
                                        0
                                        • mike_wooskey@lemmy.thewooskeys.comM [email protected]

                                          Well, yeah, but it's git:
                                          https://raw.github.com/git/git/master/contrib/completion/git-prompt.sh

                                          My thinking is that I trust git on my computer, so I trust downloading from their repo.

                                          But you're right. I should revisit this and see if it's even necessary.

                                          T This user is from outside of this forum
                                          T This user is from outside of this forum
                                          [email protected]
                                          wrote on last edited by
                                          #31

                                          Is this running in your rc (i.e. every single time you open a terminal)? Even if it's safe, I'd be annoyed by any delay.

                                          mike_wooskey@lemmy.thewooskeys.comM G 2 Replies Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups