Προς το περιεχόμενο

Ubuntu PS1


moukoublen

Προτεινόμενες αναρτήσεις

Δεν μπορώ να καταλάβω το εξής.
 
Στο fedora μου φτιάχνω αυτό το script για να κάνω όπως θέλω το PS1 το βάζω στο /etc/profile.d σαν myps1.sh και έκτοτε όλα καλά. 

function getifroot(){
  if [[ $EUID -ne 0 ]]; then
   echo "\u";
  else
   echo "\[\e[0;91m\]\u\[\e[0;32m\]";
  fi
}

function doThePrompt(){
    local Color_Off='\e[0m'       # Text Reset
    local Full_Color_Off='\e[0;0m'
    
    # Regular Colors
    local Black='\e[0;30m'        # Black
    local Red='\e[0;31m'          # Red
    local Green='\e[0;32m'        # Green
    local Yellow='\e[0;33m'       # Yellow
    local Blue='\e[0;34m'         # Blue
    local Purple='\e[0;35m'       # Purple
    local Cyan='\e[0;36m'         # Cyan
    local White='\e[0;37m'        # White

    # Bold
    local BBlack='\e[1;30m'       # Black
    local BRed='\e[1;31m'         # Red
    local BGreen='\e[1;32m'       # Green
    local BYellow='\e[1;33m'      # Yellow
    local BBlue='\e[1;34m'        # Blue
    local BPurple='\e[1;35m'      # Purple
    local BCyan='\e[1;36m'        # Cyan
    local BWhite='\e[1;37m'       # White

    # Underline
    local UBlack='\e[4;30m'       # Black
    local URed='\e[4;31m'         # Red
    local UGreen='\e[4;32m'       # Green
    local UYellow='\e[4;33m'      # Yellow
    local UBlue='\e[4;34m'        # Blue
    local UPurple='\e[4;35m'      # Purple
    local UCyan='\e[4;36m'        # Cyan
    local UWhite='\e[4;37m'       # White

    # Background
    local On_Black='\e[40m'       # Black
    local On_Red='\e[41m'         # Red
    local On_Green='\e[42m'       # Green
    local On_Yellow='\e[43m'      # Yellow
    local On_Blue='\e[44m'        # Blue
    local On_Purple='\e[45m'      # Purple
    local On_Cyan='\e[46m'        # Cyan
    local On_White='\e[47m'       # White

    # High Intensty
    local IBlack='\e[0;90m'       # Black
    local IRed='\e[0;91m'         # Red
    local IGreen='\e[0;92m'       # Green
    local IYellow='\e[0;93m'      # Yellow
    local IBlue='\e[0;94m'        # Blue
    local IPurple='\e[0;95m'      # Purple
    local ICyan='\e[0;96m'        # Cyan
    local IWhite='\e[0;97m'       # White

    # Bold High Intensty
    local BIBlack='\e[1;90m'      # Black
    local BIRed='\e[1;91m'        # Red
    local BIGreen='\e[1;92m'      # Green
    local BIYellow='\e[1;93m'     # Yellow
    local BIBlue='\e[1;94m'       # Blue
    local BIPurple='\e[1;95m'     # Purple
    local BICyan='\e[1;96m'       # Cyan
    local BIWhite='\e[1;97m'      # White

    # High Intensty backgrounds
    local On_IBlack='\e[0;100m'   # Black
    local On_IRed='\e[0;101m'     # Red
    local On_IGreen='\e[0;102m'   # Green
    local On_IYellow='\e[0;103m'  # Yellow
    local On_IBlue='\e[0;104m'    # Blue
    local On_IPurple='\e[10;95m'  # Purple
    local On_ICyan='\e[0;106m'    # Cyan
    local On_IWhite='\e[0;107m'   # White

PS1="\[$IYellow\]╭ \[$Green\][$(getifroot)@\H] \[$IYellow\]\w\n\[$IYellow\]╰ \[$Green\]\$\[$Color_Off\]\[$Full_Color_Off\] "
}

doThePrompt

 

 

 
Στο ουμπούντου αν κάνω το ίδιο συμβαίνουν δυο παράλογα πράγματα. 
 
1) μετά από κάθε login με πετάει πάλι στο login screen.
 
2) Ακόμα και μονο του να τρέχω το script δεν αλλάζει το PS1 ούτε καν προσωρινά στο συγκεκριμένο session που δουλεύω.
 
Μπορεί να μου εξηγήσει κάποιος γιατί συμβαίνει αυτό Καθώς και γιατί αυτή η διαφορα από fedora σε ουμπούντου.
 
 
Ευχαριστώ εκ των προτερων.
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Σε ευχαριστώ για την πρόταση, φαντάζομαι εκεί θα παίξει αλλά δε θέλω να βάλω την αλλαγή στο ~/.bashrc.

 

Αφενός γιατί θέλω η αλλαγή να ισχύει για όλους τους χρήστες ( αν και στο ubuntu δεν εκτελώ su ποτέ ) και αφετέρου γιατί το folder profile.d υπάρχει ακριβώς για αυτή τη δουλειά.

 

Να βάζεις μέσα αυτόνομα scripts τα οποία τα εκτελεί το /etc/profile script στο τέλος του.

 

Δε μου αρέσει η λογική να προσθέτω σε ένα scrpit που έχει δημιουργηθεί από το σύστημα ο,τι θέλω.

Μου αρέσουν τα καθαρά και αυτόνομα πράγματα και στο συγκεκριμένο μέσω του profile.d υποτίθεται ότι γίνεται αυτό ακριβώς.

 

Μου κάνει εντύπωση πάντως.  

 

EDIT

Δηλαδή δε με ενδιαφέρει να βρω απλά τρόπο να αλλάξω το PS1. 

Με ενδιαφέρει να μάθω γιατί δε γίνεται με τον παραπάνω τρόπο ενώ θα έπρεπε.

 

Τέλος πάντων θα το ψάξω περισσότερο.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...