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. #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?
     
  8. #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. 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...
  2. 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...
  3. Shell Script Problem

    Shell Script Problem: Hallo zusammen, ich arbeite momentan mit einem Plagiat Tool, die ich über Git Bash ausführe. Es wird im Endeffekt ein Link generiert, die ich...
  4. Problem mit Registry Shares

    Problem mit Registry Shares: Hallo zusammen, ich habe ein AD auf Samba-4-Basis aufgebaut. Bisher hat alles soweit geklappt. Das AD läuft, ich kann Rechner hinzufügen, GPOs...
  5. SFLC veröffentlicht Whitepaper zur ZFS-Problematik

    SFLC veröffentlicht Whitepaper zur ZFS-Problematik: Das Software Freedom Law Center hat in einem Whitepaper die rechtliche Situation der freien Lizenzen GPLv2 und CDDL noch einmal genau analysiert....