termina o comando 'top' após uma iteração - Unix

2

Eu quero executar o comando top apenas uma iteração, para que eu possa capturar a saída do processo programaticamente. Se eu apenas executar top , ele não retornará a menos que eu mate o terminal. Assim, só preciso executá-lo uma vez e retornar. Como posso fazer isso?
Edit: estou executando o comando top de Java: Runtime.getRuntime().exec("top"); .

    
por cybertextron 23.08.2016 / 19:43

1 resposta

12

Pelo menos com o Linux / procps top, você provavelmente desejará -b (para alternar para o modo batch) e -n 1 (para executar apenas uma iteração).

top -b -n 1

Sugiro ler a página de manual via man top , ele documenta essas opções.

Sem mencionar que, dependendo da meta, pode haver ferramentas melhores para usar (por exemplo, ps ou alguma biblioteca disponível em sua linguagem de programação).

    
por 23.08.2016 / 19:51

Tags