Hlavní navigace

Názor k článku Hrátky z řádky: prompt, file, at a další od PQK - Pěkné, ale má to nevýhodu, že si tu...

Článek je starý, nové názory již nelze přidávat.

  • 18. 2. 2008 10:49

    PQK
    Pěkné, ale má to nevýhodu, že si tu návratovou hodnotu "pamatuje" pořád
    $ PS1='`if [[ $? -eq 0 ]]; then echo ":)"; else echo ":("; fi`'
    :)
    :)
    :)
    :)
    :)qwrwerwerew
    bash: qwrwerwerew: command not found
    :(
    :(
    
    já to mám napsané trochu jinak, tu err to vypíše jen jednou ... (+ mám to ještě probarvené):
    export PROMPT_COMMAND=bash_prompt_command
    bash_prompt_command () 
    { 
        local LAST=$?;
        local LASTPS="";
        local USER_ID=`id -r -u`;
        local PS1_H="[\A]-[\w]";
        local PS1_D="[\u@\h]";
        [ $USER_ID -eq "0" ] && { 
            PS1_H="
            PS1_D="
        };
        if [ ${LAST} -eq 0 ]; then
            LASTPS="";
        else
            if [ ${PREV_LAST} -ne ${LAST} -o ${PREV_LAST_SHOWN} -ne ${HISTCMD} ]; then
                LASTPS="(${LAST})";
            else
                LASTPS="";
            fi;
        fi;
        PREV_LAST=${LAST};
        PREV_LAST_SHOWN=${HISTCMD};
        export PS1="$PS1_H\n$PS1_D${LASTPS}\$ "
    }