Noções básicas sobre opções para classificar

0

parte 1

ps -e | sort -k 1 -nr 

Qual é a interpretação do comando acima? Eu quero entender o papel de -nr . Não é claramente dado as páginas de homem do tipo.

parte 2

Quando você abre a man page do head, uma das opções diz:

-c, --bytes=[-]K

print the first K bytes of each file; with the leading '-', print all but the last K bytes of each file

Como interpretar o -c, --bytes=[-]K ?

    
por Achyuta Aich 24.09.2015 / 15:44

3 respostas

2

Parte 1

  1. ps é um comando que relata uma captura instantânea dos processos atuais e o argumento -e especifica ps para relatar todos os processos.
  2. | é um pipe. Isso permite redirecionar a saída do comando anterior para outro comando. Neste exemplo, você está redirecionando a saída de ps -e para sort .
  3. sort é um comando que permite ordenar as linhas de stdin. O argumento -k 1 classifica por meio de uma chave, neste caso 1 . Isso significa que você irá classificar com relação à primeira coluna de ps -e , os números PID. O argumento -nr classifica a entrada numericamente na ordem inversa (decrescente).
  4. NOTA: O argumento -n é realmente redundante nesta implementação. Você não precisa disso porque já está especificando sort para classificar na primeira coluna. ps -e | grep -rk 1 funcionará da mesma forma.

Parte 2

  1. O argumento -c ou --bytes=[-]K permite que você imprima o primeiro ou todos, exceto os últimos X kilobytes de um arquivo, onde X é o kilobytes que você deseja imprimir. Para imprimir os primeiros X kilobytes, basta colocar um número depois de -c . Para imprimir todos os kilobytes, com exceção dos últimos, adicione um - na frente dos kilobytes X.

  2. Observe também que, com -c , você não precisa especificar um número seguido por K . Essa sintaxe é necessária apenas no argumento --bytes= .

por 24.09.2015 / 18:24
0

Parte 1: -n é para ordenação numérica, -r é para ordenação inversa, então -nr combinados classifica em ordem decrescente numericamente.

Parte 2: você pode usar -c (opção curta) ou --bytes= (opção longa, mais digitação, mas nenhuma diferença). Então diga --bytes=-1024 para os últimos 1024 bytes, por exemplo.

    
por 24.09.2015 / 15:55
0

Além disso, os itens entre os parênteses [] podem ser interpretados como 'opcionais'. Então, --bytes=[-]K significa que você pode usar um 'traço' para 'o último de ...' e sem que isso signifique 'o começo de ...'. Como o 'K' não está entre parênteses, significa que é necessário para a opção --bytes

    
por 24.09.2015 / 16:59

Tags