![]() |
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Rules | Lenker | Album | FAQ | Medlemsliste | Kalender | Søke | Dagens innlegg | Marker forumene som lest |
| UNIX for Dummies Spørsmål og svar Hvis du er usikker på hvor du skal legge inn en UNIX-eller Linux-spørsmålet, legger den her. Alle UNIX og Linux newbies velkommen! |
Mer UNIX og Linux Forum Emner Du kan finne nyttig
|
||||
| Tråd | Tråd startet | Forum | Svar | Siste innlegg |
| TEST kommandoen | amatuer_lee_3 | Shell programmering og Skripting | 4 | 05-09-2008 08:36 |
| Bruke grep i en test / if statement | cbo0485 | Shell programmering og Skripting | 4 | 03-21-2008 12:29 |
| Test kommandoen | JWilliams | AIX | 2 | 12-04-2007 02:53 |
| TEST kommandoen | marwan | UNIX for Dummies Spørsmål og svar | 2 | 04-23-2007 07:51 |
| unix grep kommandoen | pmsuper | Shell programmering og Skripting | 1 | 09-19-2006 03:06 |
![]() |
|
|
LinkBack | Thread Tools | Søk i denne tråden | Rate Thread | Visningsmoduser |
|
|
|
||||
|
Unix grep / test-kommandoen
Hei, jeg har et script som sjekker om brukeren inn 8 numeriske tegn i form av ÅÅÅÅMMDD (fødselsdato). Hvis brukeren inn noen ikke numeriske tegn, vil en feilmelding vises: Code:
# Check to see if the 8 characters are all numbers
# If not show error essage
# And prompt user for more input
echo $char | grep -q '^[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]$'
if [ $? -ne 0 ]
then
echo "You have entered non-numeric values. Please type in the form of YYYYMMDD"
read char
continue
Finnes det en enklere måte å skrive denne kommandoen uten å bruke [0-9] verdi for hvert felt? Eventuelle hjelpe ville være verdsatt |
|
||||
|
regulære uttrykk for Kommaseparert tall
Hei,
Takk for ditt svar. Jeg vil bare gjøre dette kravet mer tydelig. Jeg leste verdier til en variabel, med "lese var". Jeg nå validere brukerens input. Brukeren må legge inn verdier i formatet 1,3,6 (kan angi tallverdier upto n). Jeg har prøvd dette for 2 tall. Dette er kommandoen som jeg hadde brukt. les col 1,2 ----> input gitt av brukeren echo $ col | grep-w "^ [0-9] [0-9] $" returkoden er vellykket. Hvis den inneholder andre innspill som 1, en eller, 1 eller a, b den returnerer en kode 1. Denne koden virker fint for 2 tall, men jeg vil gjøre dette arbeidet for 'n' tall. Jeg hadde prøvd løsningen leveres av deg, men E-kommandoen er ikke anerkjent av manuset mitt. TIA |
![]() |
| Hugseliste |
| Tags |
| regex, regeluttrykk |
| Thread Tools | Søk i denne tråden |
| Visningsmoduser | Ranger denne tråden |
|
|