![]() |
|
|
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 |
| Awk script em DOS e Linux comporta de maneira diferente: ( | vidyak | Windows & DOS: Temas & Debates | 2 | 04-01-2009 12:07 |
| "$ variável" não se comporta como uma corda no meu script | yabhi_22 | UNIX para Dummies Perguntas & Respostas | 3 | 02-06-2009 01:20 |
| Script comportar de maneira diferente em dois servidores | mhssatya | UNIX & avançada para usuários experientes | 5 | 09-13-2006 03:28 |
| Script comportar de maneira diferente em Crontab .. | newtoxinu | Programação Shell Script e | 4 | 10-01-2004 02:22 |
| Script comportar de maneira diferente em Crontab .. | newtoxinu | UNIX & avançada para usuários experientes | 1 | 09-30-2004 05:00 |
|
|
Linkback | Thread Tools | Pesquisar este Thread | Rate Thread | Display Modes |
|
||||
|
Caras tenho comportamento estranho com o comando de saída a ser guardada em uma variável em vez de um tmp. 1. Sou péssimo comando de saída em uma variável Amostra comando de saída Código:
# cleanstats DRIVE INFO: ---------- Drv Type Mount Time Frequency Last Cleaned Comment *** **** ********** ********* **************** ******* 0 hcart3* 51.9 0 N/A 1 hcart3* 55.9 0 N/A 2 dlt* 0.8 0 N/A 3 dlt* 0.0 0 N/A 4 dlt* 0.2 0 N/A 5 dlt* 0.0 0 N/A MEDIA INFO: ---------- media media robot robot robot side/ optical # mounts/ last ID type type # slot face partner cleanings mount time ------------------------------------------------------------------------------- CLN206 DLT_CL NONE - - - - 0 12/26/2001 08:22 CLN207 DLT_CL NONE - - - - 0 03/10/2002 10:00 CLN205 DLT_CL NONE - - - - 0 08/18/2002 06:40 CLN703 DLT_CL NONE - - - - 0 03/29/2003 05:11 CLN701 DLT_CL NONE - - - - 20 00/00/0000 00:00 CLN635 DLT_CL NONE - - - - 0 11/21/2003 04:32 CLN219 DLT_CL NONE - - - - 0 07/13/2004 06:25 CLN636 DLT_CL NONE - - - - 14 01/22/2006 08:15 CLN211 DLT_CL TLD 1 21 - - 12 10/31/2008 22:44 CLN209 DLT_CL NONE - - - - 0 12/13/2006 22:13 CLN210 DLT_CL NONE - - - - 0 10/19/2008 06:31 2. Eu, em seguida, imprima a variável para a sua tela para depurar e como esperado 3. Eu, em seguida, imprima a variável para uma declaração em awk um teste e se ele não funciona como deveria. 4. Se a saída é capturada em uma tempfile ea mesma declaração awk é utilizado, mas a entrada da tmpfile então ele não funciona. O código abaixo mostra uma forma que não funciona e um que faz. Alguém pode derramar alguma luz sobre o motivo por que? Estou, obviamente, tentando usar variáveis em vez do tmpfiles todo o lado. Não posso compreendê-lo, porque a impressão declaração para depurar mostra a saída conforme o esperado. Código:
#!/bin/ksh
....script contents, variable assignment blah blah....
# Suck clean stats to variable
CSTAT=$(cleanstats)
# Or put in tmpfile
cleanstats > ${TMPFILE}
print "CSTAT contains [${CSTAT}]" #DBG
# Check tape exists in library with free cleanings
# If tape is in unit but with no cleanings OR
# If tape is NOT in unit (TLD), the string returned is empty thus matching -z test
# (section 1)
if [[ -z "$( print ${CSTAT} | nawk '$3 == "TLD" && $8 != "0" {print}' )" ]];then
.... do stuff ....
fi
# Above doesnt work, but below does
# (section 2)
#if [[ -z "$( nawk '$3 == "TLD" && $8 != "0" {print}' < ${TMPFILE} )" ]];then
# .... do stuff ...
#fi
Usando o exemplo de saída acima fará com que a primeira seção de jogo, quando não deveria, no entanto, a segunda seção obras e só passa pelo caso. Quem derramar alguma luz sobre isso? IFS newline como está definido como padrão. Felicidades Última edição por lavascript; em 04/22/2009 10:23.. |
| Marcadores |
| Thread Tools | Pesquisar este Thread |
| Display Modes | Esta taxa Thread |
|
|