![]() |
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 |
| Como imprimir apenas em linhas entre duas strings usando awk | jisha | Programação Shell Script e | 4 | 01-11-2008 04:13 |
| imprimir linhas selecionadas | TONET | Programação Shell Script e | 6 | 10-08-2007 05:50 |
| Como imprimir número de linhas com awk? | maheshsri | Programação Shell Script e | 1 | 11-18-2005 02:19 |
| imprimir linhas adjacentes | apalex | UNIX para Dummies Perguntas & Respostas | 1 | 04-29-2002 11:59 |
![]() |
|
|
Linkback | Thread Tools | Pesquisar este Thread | Rate Thread | Display Modes |
|
|
|
||||
|
Help Needed - imprimir mutliple linhas
Tenho a seguinte entrada
- Appl acolhimento \u003d \u003d \u003d user / pid \u003d 76 \u003d 0,000 segundo decorrido server_elapsed \u003d 2,999 selecione emp_no, dept_no de emp onde empname como 'Rob%' e empno \u003d 10 ; - Appl acolhimento \u003d \u003d \u003d user / pid \u003d 76 \u003d 0,000 segundo decorrido server_elapsed \u003d 0,999 selecione emp_no, dept_no de dept onde deptname como 'TI%' ; A entrada acima preciso imprimir a seguinte saída. 2,999 | emp_no escolha, dept_no de emp onde empname como 'Rob%' e empno \u003d 10; 0,999 | emp_no selecionar, a partir de dept_no dept onde deptname como 'TI%'; Tenho arquivos com milhares de mapas, eu preciso para formatar-los como acima. Eu aprecio sua ajuda e tipo resposta. |
|
||||
|
Rápido e sujo código de voltar a formatar o seu queries - parte do princípio de que cada um começa com um comentário precedido por "-"
Código:
while read a do if [[ $a = --* ]]; then print lf=$(echo $a|wc -w); print -n "$(echo $a|cut -d' ' -f $lf) |" else print -n " "$a fi done < YourOriginalFile > YourReformattedFile |
|
||||
|
Uau ...
Obrigado pela sua rápida e suja código para resolver o meu problema. Como eu sou um novo para esse tipo de trabalho, eu poderia não conseguir compreender a solução, mas é fantástico. Tenho mais um pedido para a saída. Se eu só precisam de linhas específicas como não quero 0,000 linhas ao colocar para fora. Como então posso continuar. Eu conheço uma maneira, para fazer isso por grep-v. Mas anyother forma.
Obrigado pela sua resposta e ajuda. |
|
||||
|
como esta a postagem atual diferente do um presente
|
|
||||
|
Awk Essa linha é fantástico!
Mas usando shell script com os mesmos pressupostos como antes, para suprimir zeros: Código:
while read a
do
if [[ $a = --* ]]; then
lf=$(echo $a|wc -w)
secs=$(echo $a|cut -d' ' -f $lf)
msecs=$(( $secs * 1000))
if [ $msecs -gt 0 ]; then
print
print -n "$secs |"
fi
else
if [ $msecs -gt 0 ]; then
print -n " "$a
fi
fi
done < YourOriginalFile > YourReformattedFile
|
![]() |
| Marcadores |
| Thread Tools | Pesquisar este Thread |
| Display Modes | Esta taxa Thread |
|
|