Pegue a enésima coluna de um arquivo e faça-os entrar em um shell script

1

Eu tenho um arquivo (encrypted_pass.txt) com 2 colunas:

user1 encrypted_pass1
user2 encrypted_pass2 
user3 encrypted_pass3
...

senhas de usuários (2ª coluna) são criptografadas. Eu tenho um script de shell que descriptografa as senhas criptografadas. O script usa uma senha criptografada como entrada e a descriptografa:

decryptor.sh -d encrypted_password

O que eu quero fazer é pegar senhas criptografadas do arquivo (coluna 2), descriptografá-las e gravar a senha criptografada em um novo arquivo. Assim, o arquivo de saída deve ser:

user1 decrypted_pass1
user2 decrypted_pass2 
user3 decrypted_pass3
...

Como posso fazer isso pelo awk?

    
por Murat 16.03.2017 / 11:42

2 respostas

0

Você também pode usar algo assim:

cut -f2 -d " " input_file | xargs -n1 decryptor.sh -d > output_file
    
por 17.03.2017 / 07:47
3

Você pode usar o procedimento system para chamar seu script de dentro de awk :

awk '{printf $1" "; system("decryptor.sh -d " $2)}' file1 > file2
    
por 16.03.2017 / 11:56