Adicionando um URL ao final de uma linha específica dentro de um arquivo

0

Meu script usa um arquivo de entrada como este

user:tag:count

Ele pega o usuário, pesquisa em uma página e exibe o URL que aponta o usuário. Depois disso, o arquivo de entrada deve ser alterado para

user:tag:count:URL

O script é um loop while que inicia em i = line1 e termina na última linha. Portanto, a linha na qual o loop está trabalhando é armazenada em $ i e o URL que ele recebe é armazenado em $ url.

Normalmente eu faria isso com sed, mas eu tive problemas com isso se a variável continha "/". Eu tentei com o awk:

    awk -v iv="$i" 'NR == iv' input | awk -v var="$count" '{print $0 ":"var}' 

Ele adiciona o URL na linha correta, mas não ajuda a editar o arquivo de entrada da maneira que eu quero.

Qualquer maneira de mesclar os 2 awk's em um para que eu possa editar o arquivo?

    
por JDizzle 11.04.2017 / 15:57

1 resposta

0

Use apenas sed com um delimitador que não seja / . Por exemplo:

sed 's|foo|bar|'

Mas sim, você também pode juntar os dois comandos awk:

awk -v iv="$i" -v var="$count" 'NR == iv{print $0 ":"var}' 
    
por 11.04.2017 / 18:41

Tags