Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Mãos à obra: Passando data e hora para o arquivo

#!/bin/bash

processo=$(ps -e -o pid --sort -size | head -n 11 | grep [0-9])
for pid in $processos
do
    nome_processo=$(ps -p $pid -o comm=)
    echo -n $(date +%F,%H:%M:%S, ) >> $nome_processo.log
done
1 resposta
solução!

Olá, Henrique!

Parece que você está quase lá! Seu script está quase perfeito, mas parece que você cometeu um pequeno erro de digitação. Você definiu a variável "processo" no início do seu script, mas depois tentou usá-la como "processos".

O correto seria:

#!/bin/bash

processos=$(ps -e -o pid --sort -size | head -n 11 | grep [0-9])
for pid in $processos
do
    nome_processo=$(ps -p $pid -o comm=)
    echo -n $(date +%F,%H:%M:%S, ) >> $nome_processo.log
done

Nesse script corrigido, a variável "processos" é definida e depois usada corretamente no loop for.

Espero ter ajudado e bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software