Problem mit Genauigkeit beim Auslesen einer Datei

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von PhoenixDH, 05.09.2005.

  1. #1 PhoenixDH, 05.09.2005
    Zuletzt bearbeitet: 05.09.2005
    PhoenixDH

    PhoenixDH NOOB

    Dabei seit:
    26.08.2005
    Beiträge:
    93
    Zustimmungen:
    0
    Ich habe ein Script, welches eine Datei auf den Systemnamen durchsucht !
    Das Script sieht so aus:
    Code:
    D_delete() {
    [ "$DEBUG" -gt 0 ] && echo "D_delete()"$*
    [ "$DEBUG_D_delete" -eq 1 ] && set -xv
    
    MASCHINE=$1
    SYSTEM=`grep ${MASCHINE} ${PFAD}/ALL_HWINFO | awk -F: '{ print $3 }'`
    
      grep -v ${MASCHINE} ${SOURCEPFAD}/${SYSTEM}.txt > ${SOURCEPFAD}/${SYSTEM}.tmp
      sort ${SOURCEPFAD}/${SYSTEM}.tmp > ${SOURCEPFAD}/${SYSTEM}.txt
      rm ${SOURCEPFAD}/${SYSTEM}.tmp
    
    
    	if [ -d ${SOURCEPFAD}/${MASCHINE} ]
            then
    	if [ -d ${SOURCEPFAD}/maschinen_old/${MASCHINE} ]
    	then
               #Wenn ja wird diese geloescht
               rm -r ${SOURCEPFAD}/maschinen_old/${MASCHINE}
    	fi
               mv ${SOURCEPFAD}/${MASCHINE} ${SOURCEPFAD}/maschinen_old/	
            fi
    	
    	grep -c HREF ${SOURCEPFAD}/${SYSTEM}.txt >${SOURCEPFAD}/${SYSTEM}_zaehler.txt
    	
    } # end D_delete
    
    Die Datei ALL_HWINFO soz.B.:
    Code:
    fire: Precision WorkStation 360:WST
    fire2: Precision WorkStation 360:WST
    fire3: Precision WorkStation 360:WST
    
    Das Problem das jetzt in dem Script ist, das er nicht genau fire von z.B. fire2 unterscheiden kann, und somit eine falsche txt Datei anlegt in dem Script !

    Weiß leider nicht an welcher Stelle der Fehler ist und wie ich ihn beheben kann, aber ich denke mal der Fehler liegt irgendwo an der Stelle:
    Code:
    SYSTEM=`grep ${MASCHINE} ${PFAD}/ALL_HWINFO | awk -F: '{ print $3 }'`
    
    Wäre euch dankbar wenn ihr mir helfen könntet !

    Achso, in dem $SYSTEM sollte in dem Fall hier WST drin stehen !

    Oder liegt das irgendwie am Zeilenumbruch oder so ?
     
  2. Anzeige

    Schau dir mal diesen Ratgeber an. Viele Antworten inkl. passender Shell-Befehle!
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 damager, 05.09.2005
    damager

    damager Moderator

    Dabei seit:
    27.08.2003
    Beiträge:
    3.065
    Zustimmungen:
    0
    Ort:
    Munich
    versuche doch mal es mit der option
    der finden dann nur die exakten treffer :]

    ist es das was du willst?
     
  4. #3 PhoenixDH, 05.09.2005
    PhoenixDH

    PhoenixDH NOOB

    Dabei seit:
    26.08.2005
    Beiträge:
    93
    Zustimmungen:
    0
    Denke schon das es das ist, das Problem ist, das Script verstehe ich noch nicht ganz, bin auch schon die ganze Zeit am Testen wo genau der Fehler liegt, aber ich werde es mal versuchen !
     
  5. #4 damager, 05.09.2005
    damager

    damager Moderator

    Dabei seit:
    27.08.2003
    Beiträge:
    3.065
    Zustimmungen:
    0
    Ort:
    Munich
    einfach die zeile mit:
    ersetzen :]
     
  6. #5 PhoenixDH, 05.09.2005
    PhoenixDH

    PhoenixDH NOOB

    Dabei seit:
    26.08.2005
    Beiträge:
    93
    Zustimmungen:
    0
    ja, hab ich, aber das ist irgendie nicht der Fehler, ich bekomme hier total komische ausgaben !

    Bei der ALL_HWINFO Datei:
    Code:
    fire2: Precision WorkStation 360:TSW
    fire4: Precision WorkStation 360:xyz
    fire: Precision WorkStation 360:WST
    
    bekomme ich sowas mal gemeldet:
    Code:
    sort: open failed: /cfg2html_server/docs/docs_aix/TSW: No such file or directory
    cp: target `WST.txt' is not a directory
    rm: cannot remove `/cfg2html_server/docs/docs_aix/TSW': No such file or directory
    rm: cannot remove `xyz': No such file or directory
    rm: cannot remove `WST.tmp': No such file or directory
    grep: /cfg2html_server/docs/docs_aix/TSW: No such file or directory
    grep: xyz: No such file or directory
    grep: WST.txt: No such file or directory
    
    mit oder ohne -w !
     
  7. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  8. #6 damager, 05.09.2005
    damager

    damager Moderator

    Dabei seit:
    27.08.2003
    Beiträge:
    3.065
    Zustimmungen:
    0
    Ort:
    Munich
    aber das hat dann aber nix mit der grep-option zu tun. da stimmt was anderes bei dir nicht mehr.

    mach doch mal selber:
    grep -v fire /pfad/zu/ALL_HWINFO | awk -F: '{ print $3 }'
    dann sollest du nur eine zeile bekommen und von der nur das WST.
    was soll aber rauskommen?
     
  9. #7 PhoenixDH, 07.09.2005
    PhoenixDH

    PhoenixDH NOOB

    Dabei seit:
    26.08.2005
    Beiträge:
    93
    Zustimmungen:
    0
    Es hat doch geklappt mit -w, hatte es nur an 2 Stellen nicht drin, weil ich dachte das hätte damit nix zu tun, also jetzt läuft es perfekt, soweit ich getestet habe !
     
Thema:

Problem mit Genauigkeit beim Auslesen einer Datei

Die Seite wird geladen...

Problem mit Genauigkeit beim Auslesen einer Datei - Ähnliche Themen

  1. Probleme mit YUM

    Probleme mit YUM: Hallo, ich habe CentOs 7 als Dualboot mit Windows 7 auf einen Dell Latitude E5510 installiert. Dies hat soweit auch alles geklappt. Leider habe...
  2. Problem mit Win-Zugriff auf SAMBA

    Problem mit Win-Zugriff auf SAMBA: Hallo rundherum, vielleicht hat jemand eine Idee... Habe jetzt schon 1 1/2 Tage damit verbraten und den Fehler nicht gefunden. Problem:...
  3. [SOLVED]Linux/W7 Dualboot efi problem

    [SOLVED]Linux/W7 Dualboot efi problem: Moin, ich plage mich gerade mit dem Problem des Dualboot Und zwar würde ich gerne mein efi installiertes Windows ebenfalls mit grub booten...
  4. Linkerproblem mit MXE

    Linkerproblem mit MXE: Hallo Leute :winke:, ich war echt lange nicht mehr hier... Wie auch immer, ich schreibe gerade ein Programm, das sowohl Qt5, als auch OpenMP...
  5. Forscher analysieren Durchsatzprobleme im Linux-Scheduler

    Forscher analysieren Durchsatzprobleme im Linux-Scheduler: Eine Gruppe von Forschern hat Fälle identifiziert, in denen der Scheduler im Linux-Kernel falsche Entscheidungen trifft und die CPUs nicht so gut...