The UNIX and Linux Forums  


Go Back   De Unix-en Linux Forum > Top Forums > Programmeren en Shell Scripting
.
google unix.com



Programmeren en Shell Scripting Post vragen over KSH, CSH, SH, Bash, Perl, PHP, sed, awk en andere shell scripts en shell scripting talen hier.

Meer UNIX en Linux Forum Onderwerpen Misschien vindt u Helpful
Draad Thread Starter Forum Antwoorden Last Post
Hoe kan ik de voorbereiding van een bestand door het vergelijken van twee andere bestanden? manmohanpv Programmeren en Shell Scripting 3 02-18-2008 04:58
Vergelijking van de inhoud van bestanden RRS Programmeren en Shell Scripting 3 04-03-2007 09:08 PM
vergelijken met echte schaduw bestanden bestanden terrym UNIX for Advanced & Expert Gebruikers 4 02-09-2007 02:38
Creating bestandsinhoud met behulp van de inhoud van een ander bestand REV Programmeren en Shell Scripting 21 02-24-2006 10:25
shell script, het vergelijken van bestanden in een bestand raina_nalin Programmeren en Shell Scripting 4 06-21-2005 07:00

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Zoeken in deze Thread Rate Thread Display Modes
  #1 (permalink)  
Old 06-28-2006
SummitElse SummitElse is offline
Geregistreerde gebruiker
  
 

Join Date: Feb 2005
Posts: 19
het vergelijken van bestanden naar de inhoud van een bestand

Hoi ik heb een probleem probeert te draaien terwijl een verklaring.

Ik heb bestanden in een map die ik nodig om te vergelijken met een waarde in filex en update het bestand met het resultaat

bestanden in de directory zijn

DFC1.
DFC5.
DFC345.
DFC344.
DFC9.

Het programma i am trying to run zal het aantal vormen de bestandsnaam
en het vergelijken met de waarde in filex

het zou moeten lopen via elke waarde in de directory vergelijken met de waarde in filex en indien groter dan in de plaats van de waarde in filex en verwijder het bestand uit de directory

ie vergelijken DFC1. de waarde 1 bij de waarde in filex \u003d 0
Het is groter, zodat de plaats van waarde in filex met 1 verwijderen DFC1. en doe de volgende bestandsnaam DFC5. Hetzelfde geldt voor DFC345. en DFC344 (maar dit moet niet)

ideeën

probeer deze #! / usr / bin / ksh

cd / SWM / test / apps / crediteuren / temp
pwd

var1 \u003d $ (ls-t DFC *.)
echo $ var1
# terwijl lees var1
# doen
echo kat $ var1
var2 \u003d $ (echo $ var1 | cut-d.-f1 | cut-C5-)
echo $ var2> / SWM / test / apps / crediteuren / temp / valuex
als
[$ var2-ge var3 \u003d $ (cat valuex)]
dan
rm $ var1
anders
echo "de huidige waarde groter is dan het bestand $ var1

dank voor alle hulp
  #2 (permalink)  
Old 06-28-2006
grial's Avatar
grial grial is offline Forum Advisor  
El UNIX es como un toro
  
 

Join Date: Jun 2006
Locatie: Madrid (Spanje)
Posts: 531
Helo.
Als ik het heb begrepen heb, zou dit aan uw behoeften:
Code:
#!/bin/bash

# Initial value used to compare.
val=0
echo "initial val=$val"
echo "-----------"

# For each file whose name starts with "DFC" and is under files/ folder do
for f in $(ls -1 files/DFC*); do
   echo "File: $f"
   # get the number from the filename
   num=$(echo $(basename $f) | cut -d. -f1|cut -c4-)
   echo "num: $num"
   # Compare it to val value
   if [ $num -gt $val ]; then
      # It's greater, so update val value and delete file.
      val=$num
      rm $f
      echo "${f} deleted."
   fi
   echo "val=$val"
   echo "--"
done

echo "-----------"
echo "###########"
echo "-----------"
echo "val=$val"
Voor bash, maar waarschijnlijk zal werken onder ksh.

Het script gaat ervan uit uw bestanden worden opgeslagen in. / Bestanden

Groeten.
  #3 (permalink)  
Old 06-28-2006
SummitElse SummitElse is offline
Geregistreerde gebruiker
  
 

Join Date: Feb 2005
Posts: 19
Cheers grial er bijna enige probleem blijft terugkeren tot $ val op 0

Ik moet een register bijhouden van de laatste waarde en gebruik deze de volgende keer dat het proces liep
  #4 (permalink)  
Old 06-28-2006
grial's Avatar
grial grial is offline Forum Advisor  
El UNIX es como un toro
  
 

Join Date: Jun 2006
Locatie: Madrid (Spanje)
Posts: 531
Je kon opslaan in een bestand:
Code:
# Initial value used to compare.
val=$(cat /path/to/file.txt)
/ pad / naar / bestand.txt
bevat slechts een regel met het aantal en moet bestaan in de eerste run in deze zaak.
Ten slotte:
Code:
echo "-----------"
echo "###########"
echo "-----------"
echo "val=$val"
echo $val > /path/to/file
Dus dat je het bestand met de nieuwe waarde.
Closed Thread

Bladwijzers

Thread Tools Zoeken in deze Thread
Zoeken in deze Thread:

Uitgebreid zoeken
Display Modes Beoordeel deze draad
Beoordeel deze draad:

Posting Regels
Jij mag niet Post Nieuwe threads
Jij mag niet na antwoorden
Jij mag niet post attachments
Jij mag niet bewerk uw berichten

BB code is Aan
Smilies zijn Aan
[IMG] code Aan
HTML-code is Uit
Trackbacks zijn Aan
Pingbacks zijn Aan
Refbacks zijn Aan




Alle tijden zijn GMT -4. Het is nu 04:21 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Vertalingen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
De Unix-en Linux Forums Copyright © 1993-2009. Alle rechten Reserved.Ad Beheer door RedTyger

Content Relevante URL's door vBSEO 3.2.0