![]() |
|
|
google unix.com
|
|||||||
| Fórumok | Regisztráció | Fórum Szabályok | Linkek | Albumok | GYIK | Tagok listája | Naptár | Keres | Mai hozzászólások | Megjelöl Fórumok Olvas |
| Shell programozás és Scripting Post kérdések KSH, CSH, SH, Bash, Perl, PHP, SED, AWK ÉS EGYÉB shell szkriptek és shell script nyelvek itt. |
Több, UNIX és Linux fórum témák Ön által talált Hasznos
|
||||
| Szál | Thread Starter | Fórum | Válaszok | Utolsó hozzászólás |
| Awk script-DOS és a Linux eltérően viselkedik: ( | vidyak | Windows és DOS: kérdések & Fórum | 2 | 04-01-2009 12:07 PM |
| "$ változó" nem viselkedik, mint egy olyan karakterlánc in my script | yabhi_22 | A UNIX a dummies Kérdések és válaszok | 3 | 02-06-2009 01:20 PM |
| Script eltérően viselkedik a két szerverek | mhssatya | A UNIX a fejlett és szakértői Felhasználók | 5 | 09-13-2006 03:28 PM |
| Script viselkednek eltérően Crontab .. | newtoxinu | Shell programozás és Scripting | 4 | 10-01-2004 02:22 PM |
| Script viselkednek eltérően Crontab .. | newtoxinu | A UNIX a fejlett és szakértői Felhasználók | 1 | 09-30-2004 05:00 PM |
![]() |
|
|
LinkBack | Téma eszközök | Keresés a téma | Rate Thread | Megjelenítési módok |
|
|
|
||||
|
Srácok nekem van furcsa viselkedését a parancs kimenetet is mentett egy változó helyett egy tmp fájlt. 1. Én szopogatják parancs kimenetet változó Minta parancs kimenet Kód:
# 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. Aztán, hogy a nyomtatott változó képernyőn debug és a várt 3. Aztán, hogy a nyomtatott változó az awk nyilatkozatot egy teszt és ha ez nem működik, ahogy kellene. 4. Ha a kibocsátás rögzített egy átmeneti és ugyanazon awk nyilatkozat használják, de a bemenet a tmpfile akkor ez nem működik. Az alábbi kód mutatja egyik módja, amely nem a munka és az egyik nem. Can anyone shed olyan könnyű, hogy miért? Én természetesen próbálja használni változók helyett tmpfiles mindenhol. Nem értem, mert a nyomtatási nyilatkozatában debug megmutatja a teljesítmény, mint várták. Kód:
#!/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
Használja a kimeneti minta fent fog okozni az első szakaszban a mérkőzés, amikor nem kellett, de a második részben működik, és csak az, ha átmegy. Bárki, bármilyen fényt derítsen az? IFS meg a newline standard. Egészségére Last edited by lavascript; 04/22/2009 at 10:23 AM.. |
|
||||
|
Furcsa módon éppen a beállítás, hogy az IFS semmit úgy tűnik, hogy nem rögzítették azt. Nem vagyok teljesen biztos benne, miért, de gyűjtöttek volna körül az elválasztó. Megpróbáltam ezt: -- Kód:
oldIFS=$IFS IFS="\n\r" if [ ....blah IFS=$oldIFS ., és észrevettem, hogy helyesen működött, de a nyomtatott eredetiről awk hiányzott n és R's. A tárgyalás és a hiba Találtam beállítás Kód:
IFS="" tette munkáját. Bárki, aki tudja, miért? egészségére |
![]() |
| Könyvjelzõk |
| Téma eszközök | Keresés a téma |
| Megjelenítési módok | Rate this thread |
|
|