É possível colorir as permissões - parte da saída de 'ls'?

1

Nas permissões rwx listadas por ls -l , é possível colocar o primeiro conjunto de rwx em vermelho, o próximo em azul e o terceiro em verde?

Por exemplo, o seguinte é possível:

    
por Zabba 20.04.2011 / 08:51

2 respostas

3

Dê uma olhada em Arbitrary Command Output Color . Pode, bem, colorir as saídas de comandos arbitrárias. Não há arquivo DEB de trabalho, mas instalação trivial (uma vez que você tenha ruby instalado). A configuração é feita por meio de expressões regulares e você pode fazer o que quiser.

    
por MPi 20.04.2011 / 10:01
3

A análise da ls output é notoriamente propensa a erros , mas aqui está uma versão funcional baseada em find :

while IFS=$'\t' read -r -d '' perms name
do
    echo "${perms:0:1}$(tput bold; tput setaf 1)${perms:1:3}$(tput setaf 4)${perms:4:3}$(tput setaf 2)${perms:7:3}$(tput sgr0) ${name}"
done < <(find . -maxdepth 1 -printf "%M\t%f
while IFS=$'\t' read -r -d '' perms name
do
    echo "${perms:0:1}$(tput bold; tput setaf 1)${perms:1:3}$(tput setaf 4)${perms:4:3}$(tput setaf 2)${perms:7:3}$(tput sgr0) ${name}"
done < <(find . -maxdepth 1 -printf "%M\t%f%pre%")
")
    
por l0b0 20.04.2011 / 09:35