![]() |
|
|
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 |
| Como não posso ler um arquivo de texto no Unix - ELF-64 objeto arquivo executável - IA64 | alexcol | UNIX & avançada para usuários experientes | 8 | 11-07-2008 08:56 |
| Post Shell programação: Pergunta sobre a fonte de um arquivo e ler dados a partir do arquivo | ccwq | Programação Shell Script e | 3 | 08-04-2007 11:28 |
| Ler palavras do arquivo e criar novos arquivos utilizando K-shell. | bsrajirs | Programação Shell Script e | 4 | 06-01-2007 01:15 |
| Ler arquivo xml | ram2s2001 | Programação Shell Script e | 2 | 12-12-2005 12:20 |
| Como ler linhas específicas em um arquivo usando a granel arquivo de programação C | rajan_ka1 | Alto Nível de programação | 10 | 11-10-2005 03:29 |
![]() |
|
|
Linkback | Thread Tools | Pesquisar este Thread | Rate Thread | Display Modes |
|
|
|
||||
|
Ajuda com awk - leia a partir do arquivo
Oi, Eu tenho um arquivo como o seguinte: Código:
Starting to process segment 0 (and symmetry related segments) Number of (cancelled) singularities: 0 Number of (cancelled) negative numerators: 0 Segment 0: 5.49secs Starting to process segment 1 (and symmetry related segments) Number of (cancelled) singularities: 0 Number of (cancelled) negative numerators: 0 Segment 1: 10.01secs Starting to process segment 2 (and symmetry related segments) Number of (cancelled) singularities: 0 Number of (cancelled) negative numerators: 0 Segment 2: 7.82secs Starting to process segment 3 (and symmetry related segments) Number of (cancelled) singularities: 0 Number of (cancelled) negative numerators: 0 Segment 3: 5.31secs ... e gostaria de extrair as informações sobre o tempo. Gostaria de ler o ficheiro, guarde o tempo (de cada linha) para uma variável, retire o sufixo secs e depois adicioná-lo ao valor anterior. O resultado será o total de tempo .... Eu tentei muitas coisas, mas nenhum deles funciona ... Em caso de ajuda, a última foi uma Tentei Código:
TIME="`awk '/Segment/ {print $3%secs + $TIME} ' log.txt`"
echo $TIME
É uma solução boba, mas acho que ele pode transmitir aquilo que eu quero fazer .... Desconfio que tenha algo a ver com a leitura de cada linha separetely, mas eu não pode figurar que para fora ... Muito obrigado de antemão ... |
|
||||
|
Para adicionar os valores, é suficiente se você receber a soma no final? Então awk é tudo que você precisa: Código:
awk '/Segment/ { gsub("secs",""); time += $3 } END { print time }' file.txt
Se você realmente deseja verdadeiramente loop acumulado ao longo dos tempos e fazer algo que cada um no reservatório, que seria algo como Código:
awk '/Segment/ { gsub ("secs",""); time += $3; print $3, time } file.txt |
while read THISTIME SUMTIME; do
echo This time, we got $THISTIME
echo Sum so far is $SUMTIME
done
O reservatório da aritmética instalações são inteiros só, por isso não pode soma números com fraccional partes no próprio reservatório. Como awk para imprimir tanto o actual eo valor acumulado para cada linha é uma boa solução para isso (e uma boa oportunidade para demonstrar a ler múltiplos valores a partir da mesma linha na shell). |
![]() |
| Marcadores |
| Thread Tools | Pesquisar este Thread |
| Display Modes | Esta taxa Thread |
|
|