![]() |
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Rules | Lenker | Album | FAQ | Medlemsliste | Kalender | Søke | Dagens innlegg | Marker forumene som lest |
| 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. |
Mer UNIX og Linux Forum Emner Du kan finne nyttig
|
||||
| Tråd | Tråd startet | Forum | Svar | Siste innlegg |
| sjekke feil i filer | ali560045 | Shell programmering og Skripting | 4 | 06-19-2008 11:56 |
| Hvordan logge inn i en annen ip og kontroll for filene | saikumar_n | Shell programmering og Skripting | 2 | 07-11-2007 03:34 |
| Hvordan logge inn i en annen ip og kontroll for filene | saikumar_n | UNIX for Advanced & ekspertbrukere | 1 | 07-11-2007 11:13 |
| se etter filer på ftp ... | jithinravi | UNIX for Dummies Spørsmål og svar | 3 | 06-22-2007 12:25 |
| Søker liste over oppføringer i filen for faktiske filer i dir | not4google | UNIX for Dummies Spørsmål og svar | 2 | 10-18-2006 12:24 |
![]() |
|
|
LinkBack | Thread Tools | Søk i denne tråden | Rate Thread | Visningsmoduser |
|
|
|
||||
|
sjekking oppføringer mellom filer
Jeg trenger å skrive et skript på:
Jeg har to filer der jeg trenger å se oppføringer og type sammenligne: file1: data01 data02 data03 data04 data05 . . . data81 file2: / vol/vx/data01 / vol/vx/data02 / vol/vx/data03 / vol/vx/data04 / vol/vx/data05 . . Så hver oppføring fra file1 bør ha tilsvarende oppføring i file2. Hvis oppføringen finnes det skal bestå, men hvis det ikke er oppføring bør det si: feil: oppføring dataXXX har ingen oppføring i file2. Takker for hjelpen. |
|
||||
|
Sitat:
Jeg får følgende feilmelding, "Enestående fordeler med hensyn til". når jeg henrettet den awk ' BEGIN (FS \u003d"/"} FNR \u003d\u003d NR (arr [$ 0] \u003d $ 0; neste) (arr2 [$ 4] \u003d $ 4) END ( for (i in arr) ( if (! arr2 [i]) ( print "error: oppføring" arr [i] "har ingen oppføring i file2" ) ) ) "" File1 "" file2 " Fortell meg gjerne hvorfor det. Jeg har et tcsh shell Takk Amit |
|
||||
|
awk
Hei, Jeg prøvde dette og det fungerer. Inngang: Code:
a: data01 data02 data03 data04 data05 b: /vol/vx/data03 /vol/vx/data01 utgang: Code:
error: entry data04 has no entry in file2. error: entry data05 has no entry in file2. error: entry data02 has no entry in file2. Kode: Code:
sed 's/\// /g' b > b.tmp
nawk '
NR==FNR {a[$1]=$1}
NR!=FNR {a[$3]=$0}
END{
for (i in a)
if (i==a[i])
print "error: entry "i" has no entry in file2."
}
' a b.tmp
rm b.tmp
|
|
||||
|
awk
Inngang: Code:
a: data01 data02 data03 data04 data05 b: /vol/vx/data01 /vol/vx/data02 /vol/vx/data05 utgang: Code:
No entry for:data03 No entry for:data04 Kode: Code:
nawk 'BEGIN{FS="/"}
{
if (NR==FNR)
test[NR]=$4
else
{
flag=0
for (i in test)
{
if ($1==test[i])
flag=1
}
if (flag==0)
print "No entry for:"$1
}
}' b a
|
![]() |
| Hugseliste |
| Thread Tools | Søk i denne tråden |
| Visningsmoduser | Ranger denne tråden |
|
|