![]() |
Olá e boas-vindas de Estados Unidos para o UNIX e Linux Forum! Obrigado por visitar e fazer parte da nossa comunidade global.
|
|
google unix.com
|
|||||||
| Fóruns | Registar | Fórum Regimento | Ligações | Álbuns | FAQ | Lista deputados | Calendário | Pesquisa | Today's Posts | Mark Forums Read |
| Programação Shell Script e Post perguntas sobre ksh, CSH, SH, BASH, Perl, PHP, SED, Awk e outros scripts shell e shell scripts línguas aqui. |
Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
|
||||
| Fio | Thread Starter | Fórum | Respostas | Última postagem |
| Script extrair os dados incorrectos a partir de arquivo texto | jermaine4ever | Programação Shell Script e | 6 | 03-16-2009 12:18 |
| Login incorreto NEI? | Juterassee | Sun Solaris | 5 | 10-30-2008 11:08 |
| login incorreto | espace1000 | UNIX para Dummies Perguntas & Respostas | 2 | 08-22-2008 06:48 |
| Login incorreto | sydney2008 | Red Hat | 6 | 08-22-2008 04:57 |
| Nome Diretório Incorrect | jand102821 | UNIX para Dummies Perguntas & Respostas | 1 | 06-19-2002 04:35 |
![]() |
|
|
Linkback | Thread Tools | Pesquisar este Thread | Rate Thread | Display Modes |
|
|
|
||||
|
Awk dados incorretos.
Estou usando o seguinte comando:
Código:
nawk -F"," 'NR==FNR {a[$2$3]=$1;next} a[$2$3] {print a[$2$3],$1,$2,$3}' file1 file2
Mas quando eu ficheiro1 importação e ficheiro2 em MS Access i get 140 registros. E sei que está correcta contagem 140. Aprecie a sua ajuda em corrigir o script acima |
|
||||
|
Citação:
Tenho dois arquivos $ Cabeça ficheiro1 zip, FirstName, LastName 07777, abc, def 22584, dez, DLO 25487, xyz, jkl 25488, dim, kio $ Cabeça ficheiro2 objectivo servidor de dados SSN, FirstName, LastName 123456789, abc, def 123456789, dez, DLO 123456789, xyz, jkl 123456789, dim, kio queria Saída: SSN, zip, FirstName, LastName Código:
nawk -F"," 'NR==FNR {a[$2,$3]=$1;next} ($2 SUBSEP $3) in a {print a[$2,$3],$1,$2,$3}' OFS=, " file2 file1
40 Matches
Código:
nawk -F"," 'NR==FNR {a[$2,$3]=$1;next} ($2 SUBSEP $3) in a {print a[$2,$3],$1,$2,$3}' OFS=, " file1 file2
140 matches
Pode me explicar essa parte ($ 2 SUBSEP $ 3) a [$ 2, $ 3] que estamos usando, aqui, porque a sua é separado por vírgula inputfile ou é regra geral Se eu não uso, então também estou ficando mesmo resultado |
|
|||||
|
Citação:
Também eu não entendo porque você tem uma rasteira aspas duplas (em vermelho) em ambos os casos? Citação:
Código:
a[$2,$3] A solução inicialmente destacados você deve dar o resultado desejado. Dada ficheiro1: Código:
zip,FirstName,Lastname 07777,abc,def 22584,dec,dlo 25487,xyz,jkl 25488,dim,kio Código:
SSN,Firstname,LastName 123456789,abc,def 123456789,dec,dlo 123456789,xyz,jkl 123456789,dim,kio Código:
nawk -F, 'NR==FNR {a[$2,$3]=$1;next} ($2 SUBSEP $3) in a {print a[$2,$3],$1,$2,$3}' OFS=, file2 file1
Código:
123456789,07777,abc,def 123456789,22584,dec,dlo 123456789,25487,xyz,jkl 123456789,25488,dim,kio Além disso, este não é um fórum de seu primeiro lugares e tiver sido requerido no passado: por favor, utilize BB Código tags ao publicar os dados ou código amostras. |
|
||||
|
Citação:
Código:
nawk -F"," 'NR==FNR {a[$2,$3]=$1;next} ($2 SUBSEP $3) in a {print a[$2,$3],$1,$2,$3}' OFS=, file1 file2
Eu não posso postar os arquivos devido a dados sensíveis. Eu verificada visualmente os arquivos e não vejo caracteres especiais nem nada. Existe um comando especial para verificar isso. Aprecie a sua resposta. |
|
|||||
|
Citação:
Médico: Então não faça aquele! As posições dos ficheiros na linha de comando é importante para o mapeamento dos campos de um arquivo para o outro. Olhe para o seu arquivos de dados' campos - tentar ver a diferença e olhar o seu destacamento para o mapeamento inicial lógica. Boa sorte. |
![]() |
| Marcadores |
| Thread Tools | Pesquisar este Thread |
| Display Modes | Esta taxa Thread |
|
|