Nome de usuário completo no topo

6

Em nossos sistemas, os nomes de usuário podem ter até 20 caracteres. Mas os comandos top exibem apenas os primeiros 8 caracteres.

Como posso configurar top para exibir o nome de usuário inteiro?

No momento, usamos: top procps versão 3.2.8 (linux)

Mas uma implementação superior diferente pode ser instalada.

O sistema mais antigo que precisamos suportar é o seguinte:

Linux foohost 2.6.37.1-1.2-desktop #1 SMP PREEMPT 2011-02-21 10:34:10 +0100 x86_64 x86_64 x86_64 GNU/Linux

    
por guettli 13.12.2013 / 10:03

3 respostas

4

Olhando para as fontes de top , parece que há um máximo de 8 caracteres codificados:

1223    static FLD_t Fieldstab[] = {
1229          keys   head           fmts     width   scale  sort   desc                     lflg
1230         ------  -----------    -------  ------  -----  -----  ----------------------   -------- */
1235       { "EeDd", " USER    ",   " %-8.8s",  -1,    -1, SF(URE), "User Name",            L_EUSER  },

A fmts colum é uma string de formato pritnf . %-8.8s significa cadeia acolchoada esquerda de tamanho mínimo e máximo de 8.

    
por 13.12.2013 / 11:25
2

Parece que não há atualmente nenhuma maneira de fazer isso conforme você solicita com programas de terminal. O que você pergunta não é novo e, na verdade, está na lista de solicitações de recursos htop , mas tem sido assim por um ano e meio e nenhum marco foi definido para implementar isso ainda. Nenhum sinal disso para top . 2 opções podem ser:

1) Dois terminais

Você pode dizer ao topo (por exemplo, você pode usar f durante a execução) para mostrar o UID e não o nome. Se você dividiu seu terminal em dois campos, como terminator ou screen , poderá executar a parte superior na tela superior maior e consultar o nome de usuário na parte inferior, por exemplo,

awk -v val=1000 -F ":" '$3==val{print $1}' /etc/passwd

substituindo o UID que você quer ver por 1000. É claro que você pode colocá-lo em um script muito pequeno, então você deve digitar apenas algumas letras do seu nome de script e do UID. Além disso, se você estiver falando sobre usuários não locais, você pode usar getent passwd como entrada para o awk em vez do arquivo / etc / passwd - assim:

getent passwd | awk -v val=1000 -F ":" '$3==val{print $1}'

2) opção ps

Você poderia usar ps para dar a você 15 processos mais pesados da CPU e a quem eles pertencem. Você pode variar o número de processos, é claro.

ps -ef | egrep -v "STIME|$LOGNAME" | sort -k4 -r | head -n 15 | colrm 100

Explicação:

ps -ef                     gives you all processes 
egrep -v "STIME|$LOGNAME"  removes the header line
sort -k4 -r                sorts by the CPU column in reverse (biggest on top)
head -n 15                 gives you first 15 lines of above
colrm 100                  restricts each line of output to 100 characters 

O último comando é útil, pois alguns programas sch como google chrome têm linhas de opções muito longas após o comando, então sua saída será difícil de ler se você não cortar as linhas.

    
por 13.12.2013 / 12:16
1

Realmente não posso ajudá-lo com as versões 3.2.x mais antigas do procps, mas nas versões mais recentes (por exemplo, definitivamente 3.3.10 e acho que voltou para 3.3.4), você pode ajustar o tamanho das colunas fixas. A chave que você está procurando é X.

Para usar esse recurso, primeiro inicie o início. Idealmente, mas não essencial, você "criará espaço" para sua coluna removendo outras colunas ou expandindo seu terminal. Use f para exibir sua lista de campos e desmarque o que não é necessário. Quando estiver satisfeito com a seleção de campo, pressione q para voltar à lista de processos.

Em seguida, use o comando X que lhe pergunta quanto aumentar a largura, geralmente -1 funciona ok. Você pode obter esse efeito estranho de "crescimento de coluna", mas depois de algumas poucas respostas você pode ver o nome de usuário completo.

  PID USER          PR    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND     
 3775 libvirt-qemu  20 4667404 960508  14724 S   6.1  5.9 188:04.01 qemu-syste+ 
 3825 Debian-gdm    20 1516152 114924  64404 S   2.7  0.7   1:52.09 gnome-shell 

Observe que o nome do comando agora está truncado (termina com um +) porque nosso nome de usuário é mais longo e empurrou as outras colunas para a direita. Se você acha que isso é uma boa ideia, depende do que você está procurando.

    
por 18.11.2015 / 08:33

Tags