msoliver
(usa Debian)
Enviado em 19/10/2016 - 00:19h
flavio_olimpo escreveu:
Boa noite Marcelo,
Você poderia me explicar cada comando desse, para que eu entenda e possa manipular depois, por que o script não dá erro, mas não sobrescreve nada no ARQ.txt
Grato!
Boa noite Flavio.
Eu errei, alterei o script para testar e esqueci de voltar ao original . . . É a IDADE . . .
FOI CORRIGIDO. Tem uma pequena alteração, você deve definir os ARQUIVOS em ARQ01 e ARQ02
Descrição das LINHAS do SCRIPT:
#!/bin/bash
#
DEFINA OS ARQUIVOS ABAIXO, ARQ01 e ARQ02
#ARQ01 TEM VÁRIOS CAMPOS
ARQ01=""
#ARQ02 TEM 01 CAMPO
ARQ02=""
#Lê LINHA a LINHA do ARQUIVO especificado, e atribui o valor de CADA CAMPO p/ as VARS CP01 . . . CP08
while IFS=" " read -r CP01 CP02 CP03 CP04 CP05 CP06 CP07 CP08;do
#Acrescenta 1 em COUNT
let COUNT++
#Atribui o conteúdo da LINHA Nº $COUNT de ARQ02, p/ a VAR CPNV (CAMPO NOVO)
CPNV=$(sed -n "${COUNT}p" "$ARQO2")
#Troca "$CP06" por "$CPNV" e "GRAVA" no "$ARQ01"
sed -i ''$COUNT's/'$CP06'/'$CPNV'/' "$ARQO1"
#Encerra o LAÇO "while" e define o ARQUIVO onde serão "pegos" os CAMPOS
done<"$ARQ01.txt
É isso...
E NãO ESQUEÇA . . .
Se a RESPOSTA sanou suas duvidas, marque-a como A MELHOR . . . Rsrsrsr
Abç.:
Marcelo Oliver