Página 3 de 4 PrimeiroPrimeiro 1234 ÚltimoÚltimo
+ Responder ao Tópico



  1. Citação Postado originalmente por danielvasc Ver Post
    Ainda não rolou

    As informações ficaram ambíguas, tudo distinto. To na merda cara. Tentei usar os dois métodos de vocês, porém não foi eficaz.

    Obrigado mesmo assim.
    Daniel, você errou em alguma coisa. Veja que, com base no que você solicitou, os scripts atendem perfeitamente, tanto aquele feito pelo colega caicarabruno, quanto o meu também.

    Citação Postado originalmente por danielvasc Ver Post
    Seria basicamente assim (vou esboçar a ideia):

    No arquivo passwd, lê a primeira palavra da primeira linha (no caso, o nome de usuário). Seguindo o meu exemplo, seria o usuário "zanella". Depois, faz uma comparação: Se este usuário estiver no arquivo shadow, jogar essa linha do shadow em um novo arquivo. Dessa maneira, os dois arquivos iam conter o mesmo número de linhas, com os mesmos usuários.
    Experimente o seguinte:

    Código :
    cd /tmp
    cut -d : -f 1 /etc/passwd | sort -fbn > 1.txt
    cut -d : -f 1 /etc/shadow | sort -fbn > 2.txt
    diff 1.txt 2.txt
    rm 1.txt 2.txt

    Veja se dá certo. Aqui fiz simulações e funcionou.

  2. Citação Postado originalmente por trober Ver Post
    Daniel, você errou em alguma coisa. Veja que, com base no que você solicitou, os scripts atendem perfeitamente, tanto aquele feito pelo colega caicarabruno, quanto o meu também.



    Experimente o seguinte:

    Código :
    cd /tmp
    cut -d : -f 1 /etc/passwd | sort -fbn > 1.txt
    cut -d : -f 1 /etc/shadow | sort -fbn > 2.txt
    diff 1.txt 2.txt
    rm 1.txt 2.txt

    Veja se dá certo. Aqui fiz simulações e funcionou.
    Bom, utilizando o comando "diff" realmente funciona, porém, ele me retorna um novo arquivo todo desorganizado. Eu preciso que ele compare, se existir o usuário em shadow, pega essa linha do shadow que tem este user e joga em um novo arquivo. Mas isso não acontece. Ele pega e joga apenas algo como:

    Código :
    1a2> ernesto



  3. Citação Postado originalmente por danielvasc Ver Post
    Bom, utilizando o comando "diff" realmente funciona
    Sim, disso não se tem dúvida

    Citação Postado originalmente por danielvasc Ver Post
    porém, ele me retorna um novo arquivo todo desorganizado. Eu preciso que ele compare, se existir o usuário em shadow, pega essa linha do shadow que tem este user e joga em um novo arquivo. Mas isso não acontece. Ele pega e joga apenas algo como:

    Código :
    1a2> ernesto
    Esta saída de comando está mostrando a diferença, com a informação do número da linha, em relação ao arquivo de origem e de destino.

    Para fazer o que você precisa, baseado neste adendo de solicitação, modifique então o script do caicarabruno, e troca /etc/shadow por /etc/passwd, e vive-versa. Dará certo para o que você precisa, pois será tratado de B para A, e não de A para B.

  4. Citação Postado originalmente por trober Ver Post
    Sim, disso não se tem dúvida



    Esta saída de comando está mostrando a diferença, com a informação do número da linha, em relação ao arquivo de origem e de destino.

    Para fazer o que você precisa, baseado neste adendo de solicitação, modifique então o script do caicarabruno, e troca /etc/shadow por /etc/passwd, e vive-versa. Dará certo para o que você precisa, pois será tratado de B para A, e não de A para B.

    Não resolveu o meu problema.

    Bom, eu tentei da seguinte maneira:

    #!/bin/bash
    cut -d : -f 1 /etc/passwd > passwd-novo
    cut -d : -f 1 /etc/shadow > shadow-novo

    grep -f passwd-novo shadow-novo > resultado.txt

    ################################################

    Bom, ele foi útil. Porém, agora eu tenho um arquivo chamado "resultado.txt" contendo os usuários que eu preciso, mas, o resto do conteúdo da linha não tenho dentro deste arquivo. Como eu consigo fazer para ele "grepar" cada uma das linhas do /etc/shadow? Por exemplo, dentro deste arquivo resultado.txt tenho milhares de linhas assim:

    joao
    maria
    pedro
    felipe
    renato

    Então, eu queria "grepar" joao em /etc/shadow e jogar o resultado em "arquivofinal". Entende?



  5. Rss, etsou quase mandando vc usar o google! - "OPA MANDEI".

    Cara ao usar o CUT vc esta copiando do arquivo apenas aquilo que você incialemente disse que seria necessário.

    Como você mesmo disse, é só grepar o arquivo resultado no /etc/shadow.

    grep resultado.txt /etc/shadow | tee resultado-novo.txt



    Será que isso resolve Trober ?






Tópicos Similares

  1. envio de email atraves de um shell script
    Por noir no fórum Servidores de Rede
    Respostas: 3
    Último Post: 23-08-2010, 21:42
  2. Automatizacao de comandos em shell script
    Por mistymst no fórum Servidores de Rede
    Respostas: 1
    Último Post: 16-09-2003, 10:00
  3. Dúvidas de Shell script
    Por intruder no fórum Servidores de Rede
    Respostas: 2
    Último Post: 26-06-2003, 11:27
  4. Shell Script / Calculo de tempo
    Por no fórum Linguagens de Programação
    Respostas: 1
    Último Post: 14-04-2003, 08:15
  5. input de dados no sql server via shell script
    Por cantisan no fórum Linguagens de Programação
    Respostas: 1
    Último Post: 17-02-2003, 16:43

Visite: BR-Linux ·  VivaOLinux ·  Dicas-L