Go Back   UNIX og Linux Forums > Top Forums > Shell programmering og Skripting
.
Google Site



Shell programmering og Skripting Post spørsmål om ksh, csh, SH, Bash, Perl, PHP, SED, awk og ANDRE shell scripts og Shell skriptespråk her.

Closed Thread
English Japanese Spanish French German Portuguese Italian Powered by Powered by Google
 
Thread Tools Søk i denne tråden Rate Thread Visningsmoduser
  #1 (permalink)  
Old 04-05-2009
Registrert bruker
 

Bli Dato: april 2009
Innlegg: 4
Hjelp lage et program i cshell at søk og utskrifter i et bestemt format

si jeg har en fil med navnet telefoner
i denne filen hver linje er sånn
fornavn etternavn ^ ^ telefonen
hvordan kan jeg lage et program i cshell som søker på et bestemt streng
i telefoner og Echos resultatet (hvis den finnes) slik:
lastname1
firstname1
phone1
------------------
lastname2
firstname2
phone2
og så videre ....
Jeg vet bare grep og utskrifter
lastname1 ^ firstname1 ^ phone1
lastname2 ^ firstname2 ^ phone2
... well thank you anyway
Sponsede lenker
  #2 (permalink)  
Old 04-05-2009
cfajohnson's Avatar
Shell programmerer, forfatter
 

Bli Date: Mar 2007
Bosted: Toronto, Canada
Innlegg: 2539
Sitat:
Originally Posted by h4wk View Post
si jeg har en fil med navnet telefoner
i denne filen hver linje er sånn
fornavn etternavn ^ ^ telefonen
hvordan kan jeg lage et program i cshell

C shell anbefales ikke for skripting:

Topp ti grunner til ikke å bruke C shell
Csh problemer
Csh Programmering anses Skadelig
Sitat:
som søker på et bestemt streng
i telefoner og Echos resultatet (hvis den finnes) slik:
lastname1
firstname1
phone1
------------------
lastname2
firstname2
phone2
og så videre ....
Jeg vet bare grep og utskrifter
lastname1 ^ firstname1 ^ phone1
lastname2 ^ firstname2 ^ phone2


Code:
grep NAME | tr '^' '\n'

  #3 (permalink)  
Old 04-06-2009
Registrert bruker
 

Bli Dato: april 2009
Innlegg: 4
cfajohnsom takk det fungerer! (men jeg er sikker på at du allerede vet at )
du er best!
  #4 (permalink)  
Old 04-06-2009
Registrert bruker
 

Bli Dato: april 2009
Innlegg: 4
hvordan kan jeg få linja "-------------------------"
å vise mellom resultater? takk på forhånd!
  #5 (permalink)  
Old 04-06-2009
Registrert bruker
 

Bli Date: Jan 2009
Beliggenhet: Sriharikota-AP-India
Innlegg: 53
#! / bin / bash
i \u003d 1
for en i `cat namelist`
gjøre
echo "Loop $ i:"
echo "+++++++"
grep $ a testfile | tr '^' '\ n'
echo "----------------------------"
i \u003d `expr $ i + 1`
ferdig

"namelist" vil inneholde alle navnene som må søkte / formatert.
"testfile" er filnavnet
  #6 (permalink)  
Old 04-06-2009
cfajohnson's Avatar
Shell programmerer, forfatter
 

Bli Date: Mar 2007
Bosted: Toronto, Canada
Innlegg: 2539
Sitat:
Originally Posted by h4wk View Post
hvordan kan jeg få linja "-------------------------"
å vise mellom resultater? takk på forhånd!


Code:
awk -F: -v srch="$1" '
BEGIN { OFS = "\n"; ORS = "\n------------------\n" }
index($0,srch) { $1 = $1; print }' "$FILE"

  #7 (permalink)  
Old 04-06-2009
cfajohnson's Avatar
Shell programmerer, forfatter
 

Bli Date: Mar 2007
Bosted: Toronto, Canada
Innlegg: 2539

Vennligst legg koden inni [kode] koder.
Sitat:

Code:
#!/bin/bash
i=1
for a in `cat namelist`


Det kan fungere hvis det ikke er noen mellomrom i filen, det vil mislykkes hvis det finnes.

Hvis du vil lese en fil linje for linje:


Code:
while IFS= read -r line
do
  : whatever
done < FILENAME

Sitat:
Code:
do
        echo "Loop$i:"
        echo "+++++++"
        grep $a testfile | tr '^' '\n'


Det vil mislykkes hvis det er en plass i søket, og grep og tr er både unødvendig.


Code:
case $line in
   *"$a"*) set -f; printf "%s\n" ${line//^/$'\n'} "---------------" ;;
esac

Sitat:

Code:
        echo "----------------------------"
        i=`expr $i + 1`


Det er ikke nødvendig å bruke en ekstern kommando for å gjøre heltall aritmetikk i noen POSIX Shell:


Code:
i=$(( $i + 1 ))

Sitat:

Code:
done

"namelist" vil inneholde alle navnene som må søkte / formatert.
"testfile" er filnavnet
Sponsede lenker
Closed Thread

Hugseliste

Tags
cshell, ekko, søke

Thread Tools Søk i denne tråden
Søk i denne tråden:

Avansert søk
Visningsmoduser Ranger denne tråden
Ranger denne tråden:

Innleggsaktivitet Regler
Du kanskje ikke poste nye tråder
Du kanskje ikke poste svar
Du kanskje ikke post vedlegg
Du kanskje ikke redigere innleggene dine

BB-kode er
Smilefjes er
[IMG] koden
HTML-koden Av
Pingbacks er
Refbacks er Av


Mer UNIX og Linux Forum Emner Du kan finne nyttig
Tråd Tråd startet Forum Svar Siste innlegg
Sjekke mem behandling til bestemte tider i et program pl4u UNIX for Advanced & ekspertbrukere 2 04-05-2009 06:26
manipulere data med bestemte format tonet Shell programmering og Skripting 5 04-25-2008 12:24
Gjør programmet bare kjøres av root dave123 Shell programmering og Skripting 14 03-13-2008 10:59
trekke ut data fra XML-format filen. 60doses Shell programmering og Skripting 7 01-16-2008 03:26
Hvordan lage en cshell (csh) script interaktivt jimmynath Shell programmering og Skripting 2 09-07-2005 02:28



Alle klokkeslett er GMT -4. Nå er klokken 12:51.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Language Translations Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2010. All Rights Reserved.Ad Management by RedTyger

Content Relevant nettadresser av vBSEO 3.2.0