![]() |
|
|
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 |
| ksh script ajudar | praveenbvarrier | Programação Shell Script e | 1 | 04-15-2008 11:19 |
| sql scripts ajudar | sam786 | Programação Shell Script e | 3 | 12-10-2007 12:31 |
| diferença entre AIX e Unix shell scripts shell scripts. | haroonec | Programação Shell Script e | 2 | 04-12-2006 09:12 |
| scripting guru da pls me ajudar com scripting no AIX | thatiprashant | Programação Shell Script e | 1 | 01-20-2006 07:58 |
| Scripting? | woofie | What's on Your Mind? | 1 | 03-09-2005 07:03 |
![]() |
|
|
Linkback | Thread Tools | Pesquisar este Thread | Rate Thread | Display Modes |
|
|
|
||||
|
A saída deste comando é awk
0508 0601 LVTS4687 58 1ltreb_shu1l110 shu1l110 0509 0108 LVTS4687 58 1ltreb_shu1l110 shu1l110 0509 0108 LVTS4687 58 1ltreb_shu1l110 shu1l110 0509 0108 LVTS4687 58 1ltreb_shu1l110 shu1l110 0508 2206 LVTS5035 98 1sy_unix_live_dmz_duplex_15_35 srublae03-mgt 0508 2206 LVTS5035 98 1sy_unix_live_dmz_duplex_15_35 srublae03-mgt 0508 2206 LVTS5035 98 1sy_unix_live_dmz_duplex_15_35 srublae03-mgt 0508 2206 LVTS5430 98 1 0508 2206 LVTS5430 98 1 0508 2206 LVTS5430 98 1 0508 2206 LVTS5431 98 1lmurb_shu1l282 shu1l282-sy 0508 2206 LVTS5431 98 1lmurb_shu1l282 shu1l282-sy 0508 2206 LVTS5431 98 1lmurb_shu1l282 shu1l282-sy 0506 0920 LVTS5750 41 3nw_unix_live_dmz_duplex_35_35 NRUCCAE09 MGT - 0506 0920 LVTS5750 41 3nw_unix_live_dmz_duplex_35_35 NRUCCAE09 MGT - 0506 0920 LVTS5750 41 3nw_unix_live_dmz_duplex_35_35 NRUCCAE09 MGT - 0506 0920 LVTS5750 41 3nw_unix_live_dmz_duplex_35_35 NRUCCAE09 MGT - 0506 0920 LVTS5750 41 3nw_unix_live_dmz_duplex_35_35 NRUCCAE09 MGT - 0506 0920 LVTS5750 41 3nw_unix_live_dmz_duplex_35_35 NRUCCAE09 MGT - Que está quase lá para além de haver nenhum espaço entre parm5 e 6, e também parm 4 é reduzido para os últimos 2 dígitos. Desculpas pela minha ignorância sobre esta matéria, mas eu nunca usaram "awk" antes. O arquivo deve ser semelhante a este 0508 0601 LVTS4687 58 1 ltreb_shu1l110 shu1l110 0509 0108 LVTS4687 58 1 ltreb_shu1l110 shu1l110 0509 0108 LVTS4687 58 1 ltreb_shu1l110 shu1l110 0509 0108 LVTS4687 58 1 ltreb_shu1l110 shu1l110 0508 2206 LVTS5035 98 1 sy_unix_live_dmz_duplex_15_35 srublae03-mgt 0508 2206 LVTS5035 98 1 sy_unix_live_dmz_duplex_15_35 srublae03-mgt 0508 2206 LVTS5035 98 1 sy_unix_live_dmz_duplex_15_35 srublae03-mgt 0508 2206 LVTS5430 98 1 0508 2206 LVTS5430 98 1 0508 2206 LVTS5430 98 1 0508 2206 LVTS5431 98 1 lmurb_shu1l282 shu1l282-sy 0508 2206 LVTS5431 98 1 lmurb_shu1l282 shu1l282-sy 0508 2206 LVTS5431 98 1 lmurb_shu1l282 shu1l282-sy 0506 0920 LVTS5750 141 3 nw_unix_live_dmz_duplex_35_35 NRUCCAE09-MGT 0506 0920 LVTS5750 141 3 nw_unix_live_dmz_duplex_35_35 NRUCCAE09-MGT 0506 0920 LVTS5750 141 3 nw_unix_live_dmz_duplex_35_35 NRUCCAE09-MGT 0506 0920 LVTS5750 141 3 nw_unix_live_dmz_duplex_35_35 NRUCCAE09-MGT 0506 0920 LVTS5750 141 3 nw_unix_live_dmz_duplex_35_35 NRUCCAE09-MGT 0506 0920 LVTS5750 141 3 nw_unix_live_dmz_duplex_35_35 NRUCCAE09-MGT É possível formatar o arquivo de forma cada parm começa em uma coluna específica, por exemplo Parm1 em Col1 Parm2 em Col6 Parm3 em Col12 Parm4 em Col22 Parm5 em Col27 Parm6 em Col30 Parm7 em Col65 |
|
||||
|
Isso soa como um simples printf especificador. Código:
awk whatever ... |
awk '{ printf ("%5s%6s%9s%5s%3s%35s%s\n", $1, $2, $3, $4, $5, $6, $7) }'
(Infelizmente, o mal pode ter uma largura de alguns campos. Modificando o script antes de fazer isso é por si só não é provavelmente muito difícil, quer.) Eu não vejo nada que seria reduzir $ 6 para apenas dois personagens. |
|
||||
|
O original tinha o seguinte ficheiro2
0508 2206 LVTS5431 98 1 0506 0920 LVTS5750 141 3 mas o resultado mostra a ficheiro3 0506 0920 LVTS5750 41 3nw_unix_live_dmz_duplex_35_35 NRUCCAE09 MGT - onde o 141 é truncado para 41 o resultado final que gostaria de ver de modo que cada parm é alligened nas colunas específicas Começando na coluna 1 6 12 22 27 30 65 0508 0601 LVTS4687 58 1 ltreb_shu1l110 shu1l110 Última edição por habitante do norte, em 05/14/2008 09:51.. |
|
||||
|
Qualquer que está causando isso não acontece aqui, e é por isso que unlear seria causado por Radoulov do script, mas não altera $ 6. Might seu arquivo de entrada tem sido corrompido em algum ponto?
|
|
||||
|
Checked do arquivo estão corretos e se o ficheiro de entrada é errado, então eu acho que com a ajuda de Radoulov e Era eu tenho aqui, muito obrigado mesmo.
Última edição por habitante do norte, em 05/14/2008 10:40.. |
![]() |
| Marcadores |
| Tags |
| solaris |
| Thread Tools | Pesquisar este Thread |
| Display Modes | Esta taxa Thread |
|
|