The UNIX and Linux Forums  

Go Back   A UNIX és Linux Forums > Top Fórumok > A UNIX a fejlett és szakértői Felhasználók
.
google unix.com



A UNIX a fejlett és szakértői Felhasználók Szakértő-to-szakértő. Tudjon fejlett UNIX, UNIX parancsokat, a Linux operációs rendszereket, Rendszeradminisztráció, programozás, a Shell, a Shell Scripts, Solaris, Linux, HP-UX, AIX, OS X, BSD.

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
ftp ellenőrzése ust Shell programozás és Scripting 0 07-10-2008 03:30 AM
KSH ellenőrzése string 2 karakter van, és nem tartalmaz számjegy? developncode A UNIX a dummies Kérdések és válaszok 1 04-08-2008 04:19 PM
EOF ellenőrzése alatt ramkrix Magas szintű Programozás 10 03-11-2008 01:43 AM
Checking for PXE Maestro @ Altiris SUN Solaris 5 05-25-2004 01:06 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Téma eszközök Keresés a téma Rate Thread Megjelenítési módok
  #1 (permalink)  
Old 07-17-2008
SAMZ SAMZ is offline
Regisztrált felhasználó
  
 

Join Date: Jun 2008
Hozzászólások: 18
Ellenőrzése az egyes karakterek

Could anyone help a következő vizsgálat .. Van egy kép a következő formában:

ID .... VALUE
A001 .... 100
B002 .... 200
A004 .... 300
B006 .... 100
A997 .... 200
B776 .... 400

Ez az oszlop formában, de azt akarom, hogy ellenőrizze, hogy a mező mindig kezdődik, és az A vagy B karakter ez a logika eddig:


Ha Karaktertámogatás 1 nem egyenlő az A vagy B
majd
kijelzőn hibaüzenet
vagy
folytathatnak csinálsz amit akarsz
fi

nem igazán tudja, hogyan chech, hogy minden egyes karakter 1 sorban nem egyenlő az A vagy B
habe próbált következő nélkül nem Joi

Ha a [! grep '^ A' $ file | |! grep '^ B "$ file], majd
print "hiba"
vagy
print "működik"
fi

de a fenti nem működik, azt hiszem, hogy a logika, mint a unix megértés nem nagy, legyen szíves segíteni.
  #2 (permalink)  
Old 07-17-2008
phemanth24 phemanth24 is offline
Regisztrált felhasználó
  
 

Join Date: Apr 2008
Helyszín: Hyderabad, India
Hozzászólások: 14
Próbáld ki ezt:

/ (^ A) | (^ B) (num + +)
END (if (num> 0) printf ( "% d példa az A, B létezik \ n", num);)

Ön módosíthatja a teljesítmény, ahogy akarsz.
  #3 (permalink)  
Old 07-17-2008
SAMZ SAMZ is offline
Regisztrált felhasználó
  
 

Join Date: Jun 2008
Hozzászólások: 18
nem úgy tűnik, hogy a fenti, hogy lehet megmagyarázni a további kérjük
  #4 (permalink)  
Old 07-17-2008
phemanth24 phemanth24 is offline
Regisztrált felhasználó
  
 

Join Date: Apr 2008
Helyszín: Hyderabad, India
Hozzászólások: 14
Szia Samz. Meg kellett volna kidolgozni tovább.
Én én kód egy script, és rohant be awk.

Kód:
awk -f <script name> <file>
Jelenleg ez kiírja a számos esetben az A és B
  #5 (permalink)  
Old 07-17-2008
phemanth24 phemanth24 is offline
Regisztrált felhasználó
  
 

Join Date: Apr 2008
Helyszín: Hyderabad, India
Hozzászólások: 14
BTW, akkor is kitérő Ha ezt egy forgatókönyvet.

Kód:
awk '/(^A)|(^B)/ {num++} END {if(num > 0);printf("%d instances of A,B exist\n", num);}' column
"oszlop" az a kép, ahol a megadott formátumban.
  #6 (permalink)  
Old 07-17-2008
SAMZ SAMZ is offline
Regisztrált felhasználó
  
 

Join Date: Jun 2008
Hozzászólások: 18
Idézet:
Originally Posted by phemanth24 View Post
BTW, akkor is kitérő Ha ezt egy forgatókönyvet.

Kód:
awk '/(^A)|(^B)/ {num++} END {if(num > 0);printf("%d instances of A,B exist\n", num);}' column
"oszlop" az a kép, ahol a megadott formátumban.
Ok a fentiek csak mondd meg, hány alkalommal, illetve "B", ha vannak. Azt kívánom, hogy küld egy hibaüzenetet, ha a C létezik, vagy másként a bírság, hogy továbbra feldolgozás file .. remény, amely több értelme
  #7 (permalink)  
Old 07-17-2008
Diabolist Diabolist is offline
Regisztrált felhasználó
  
 

Join Date: Mar 2002
Hozzászólások: 44
A bemeneti fájl:

Kód:
$ cat ttt
ID .... VALUE
-------------
A001 .... 100
C003 .... 800
B002 .... 200
corrupt
data
A004 .... 300
C003 .... 800
foo .... bar
A script:
Kód:
#!/bin/ksh

INPUT=ttt

{ while read LINE
do
  echo $LINE |egrep "^A|^B" > /dev/null 2>&1
  if [ $? -eq 0 ]
  then
    echo "Processing $LINE"
  else
    echo "Skipping $LINE"
  fi
done } < $INPUT
Az eredmény:
Kód:
$ ./ttt.ksh
Skipping ID .... VALUE
Skipping -------------
Processing A001 .... 100
Skipping C003 .... 800
Processing B002 .... 200
Skipping corrupt
Skipping data
Processing A004 .... 300
Skipping C003 .... 800
Skipping foo .... bar
Lehet csinálni egy string parancs segítségével awk a minta egyezés, de nem vagyok biztos benne, hogyan akarod feldolgozni a sort, ha ellenőrzi, hogy ez jó ... így ez a lehető legnagyobb rugalmasságot.

Tudassa velünk, ha kell valami a forgatókönyvben magyarázni.
Closed Thread

Könyvjelzõk

Téma eszközök Keresés a téma
Keresés a téma:

Részletes keresés
Megjelenítési módok Rate this thread
Rate this thread:

Posting szabályzat
Ön nem post new threads
Ön nem post válaszok
Ön nem post Csatolmányok
Ön nem szerkeszteni az üzeneteidet

BB kód van Be
Smilies vannak Be
[IMG] kód Be
HTML kód Ki
Trackbacks vannak Be
Pingbacks vannak Be
Refbacks vannak Be




Minden idő GMT -4. Az idő most 11:06 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Nyelvre lefordítva Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
A UNIX és Linux Fórum Tartalom Copyright © 1993-2009. Minden jog Reserved.Ad menedzsment RedTyger

Content Relevant URLs by vBSEO 3.2.0