![]() |
|
|
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 |
| substituindo espaço com pipe (delimitador) | OSD | UNIX para Dummies Perguntas & Respostas | 6 | 02-16-2009 04:38 |
| melhor forma de remover quaisquer quebras de linha | csmklee | Programação Shell Script e | 3 | 01-13-2009 02:42 |
| Substituindo URL em um arquivo com espaço | dsrookie | UNIX para Dummies Perguntas & Respostas | 5 | 02-29-2008 04:58 |
| Newbie? Se precisar de ajuda com / Then & quebras de linha ... | kthatch | UNIX para Dummies Perguntas & Respostas | 1 | 05-01-2007 08:44 |
| Remover quebras de linha a partir de um reservatório variável | lyonsd | Programação Shell Script e | 5 | 09-12-2006 02:42 |
![]() |
|
|
Linkback | Thread Tools | Pesquisar este Thread | Rate Thread | Display Modes |
|
|
|
||||
|
Estou análise através de um grande lslpp-LC com um arquivo de saída para o assinante. O arquivo contém várias linhas semelhantes a este: zip: zip-2.3-3: 2.3::: C: R: Um arquivo compressão e embalagem utilitário compatível com PKZIP.:: / bin / rpm-e zip::::: 0: Parece não haver nenhuma especializada ou secretos marcação no arquivo. No entanto, quando tento através de leitura do arquivo em um loop, enquanto em um shell script, ele rompe com todos os espaços como uma quebra de linha, e cada linha como uma dupla ruptura. Abaixo está o código: Código:
#!/usr/bin/ksh for i in `cat -n servername.lpp` do echo "$i" done O estranho é que o gato não parece notar que as linhas estão a ser desmantelados, conforme indicado pela saída abaixo. Eu tentei também na leitura do arquivo com uma segunda perl script (para i em `perl perlscript.pl) e tem exactamente o mesmo problema. Saída de entrar no Saída do arquivo de script: Código:
1 #Package Name:Fileset:Level:State:PTF Id:Fix State:Type:Description:Destination Dir.:Uninstaller:Message Catalog:Message Set:Message Number:Parent:Automatic:EFIX Locked:Install Path:Build Date 2 Java14.sdk:Java14.sdk:1.4.2.175: : :C:F:Java SDK 32-bit: : : : : : :0:0:/: Eu também tentei isso com comandos bash especificado. Não sei como resolver isto. Qualquer ajuda será apreciada. Última edição por mshulman1980; em 04/21/2009 02:38.. Motivo: Substituído citação etiqueta com o código para evitar a etiqueta auto emoticon inserção |
|
||||
|
Exemplo de entrada:
[CODE] readline: readline-4.3-2: 4.3::: C: R: Uma biblioteca para leitura e retornando linhas de um terminal.:: / bin / rpm-e readline::::: 0: sudo: sudo-1.6.7p5-3: 1.6.7p5::: C: R: Permite restrito acesso root para os usuários especificados.:: / bin / rpm-e sudo::::: 0: unzip: unzip-5,51-1: 5,51::: C: R: Um utilitário para descompactar arquivos zip.:: / bin / rpm-e unzip::::: 0: wget: wget-1.9.1-1: 1.9.1::: C: R: Uma utilidade para recuperar arquivos usando os protocolos HTTP ou FTP.:: / bin / rpm-e wget::::: 0: zip: zip-2.3-3: 2.3::: C: R: Um arquivo compressão e embalagem utilitário compatível com PKZIP.:: / bin / rpm-e zip::::: 0: [/ Code] O resultado deverá ser idêntico. Uma vez que eu sou capaz de carregar na memória de cada linha, vou analisar, através das linhas. |
|
||||
|
tente usar um ciclo while em vez ... o problema parece ser por causa do comando echo
enquanto lê linha fazer echo $ linha feito < "filename" se você quiser o número da linha também: i \u003d 1; enquanto lê linha; do echo "$ i $ linha"; i \u003d `expr $ i + 1`; feito < "filename" felicidades, Devaraj Takhellambam |
![]() |
| Marcadores |
| Thread Tools | Pesquisar este Thread |
| Display Modes | Esta taxa Thread |
|
|