variable in datei dauerhaft ändern und speichern

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von dampfkessel83, 19.01.2012.

  1. #1 dampfkessel83, 19.01.2012
    dampfkessel83

    dampfkessel83 Grünschnabel

    Dabei seit:
    19.01.2012
    Beiträge:
    4
    Zustimmungen:
    0
    Hi,

    irgendwie stehe ich auf dem schlauch!
    Ich habe ein sh Script in dem lese ich eine config Datei mit
    Code:
    source config.conf
    ein, das klappt auch nun hole ich im Script mit wget eine Datei von meinem Server, diese beinhaltet:
    Code:
    anzahl=3
    Nun möchte ich das
    Code:
    anzahl=3
    in der config.conf überchrieben wird, aber nur den Wert! In der Config stehen noch weitere Variablen!!!

    sh script:

    Code:
    #!/bin/sh
    # config
    source config.conf
    
    ######################
    
    wget "$serverurl" -O $usbpath/num_anzahl.txt
    nr=`cat $usbpath/num_anzahl.txt | grep anzahl`
    echo "---------------"
    echo $nr
    echo "---------------"
    echo $anzahl
    exit
    
    config.conf:
    Code:
    #!/bin/sh
    
    #Anzahl der DBs
    anzahl=2;
    
    Datei mit wget geholt
    num_anzahl.txt:
    Code:
    anzahl=2 
    Wie löse ich das am besten? In sh Scripten kenn ich mich nicht so gut aus, mir liegt mehr PHP und Delphi

    Gruß Olli
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 Gast123, 19.01.2012
    Zuletzt von einem Moderator bearbeitet: 20.01.2012
    Gast123

    Gast123 Guest

    Hallo und willkommen!

    Quick and dirty:
    Code:
    grep -v ^"anzahl=" config.conf > /tmp/config.conf
    echo "anzahl=$anzahl" >> /tmp/config.conf
    mv /tmp/config.conf config.conf
     
  4. #3 dampfkessel83, 19.01.2012
    dampfkessel83

    dampfkessel83 Grünschnabel

    Dabei seit:
    19.01.2012
    Beiträge:
    4
    Zustimmungen:
    0
    hm, und wo wird "num_anzahl.txt" eingelesen für den neuen wert?

    gruß olli
     
  5. #4 Gast123, 19.01.2012
    Gast123

    Gast123 Guest

    Ich habe dir eine Möglichkeit genannt, wie du eine Variable in einer Config-File aktualisieren kannst.
    Wenn ich dich richtig verstand, dann war dies dein eigentliches Problem.
    Was du mit diesem neuen Wissen anstellst liegt in deiner Verantwortung.
    8)
     
  6. #5 dampfkessel83, 19.01.2012
    dampfkessel83

    dampfkessel83 Grünschnabel

    Dabei seit:
    19.01.2012
    Beiträge:
    4
    Zustimmungen:
    0
    ja das ist auch gut, aber die config.conf wird ganz überschrieben, deswegen meine Frage wie bekomme ich nun nur die Variable aktuallisiert und dauerhaft in der conf gespeichert, die ich geändert haben will?

    gruß olli
     
  7. #6 Gast123, 19.01.2012
    Gast123

    Gast123 Guest

    Dein letzter Post zeigt mir: Du hast meinen Tipp weder verstanden noch ausprobiert.
     
  8. doc

    doc Kaffeetrinker

    Dabei seit:
    26.08.2006
    Beiträge:
    586
    Zustimmungen:
    0
    Ort:
    bremen
    bei deiner variante, wird die änderung allerdings immer and ende gestellt

    variante die die struktur der config erhält(ohne garantie :P):

    Code:
    sed -e "/^anzahl=/s/=.*/=$anzahl/" config.conf >/tmp/conf.tmp;mv /tmp/conf.tmp config.conf
     
  9. #8 marcellus, 19.01.2012
    marcellus

    marcellus Kaiser

    Dabei seit:
    09.05.2007
    Beiträge:
    1.392
    Zustimmungen:
    0
    @doc wieso nicht in place?

     
  10. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  11. doc

    doc Kaffeetrinker

    Dabei seit:
    26.08.2006
    Beiträge:
    586
    Zustimmungen:
    0
    Ort:
    bremen
    stimmt das ist viel schicker :)
     
  12. #10 dampfkessel83, 20.01.2012
    dampfkessel83

    dampfkessel83 Grünschnabel

    Dabei seit:
    19.01.2012
    Beiträge:
    4
    Zustimmungen:
    0
    Ich habe es ausprobiert und wie geschrieben wird die ganze Config überschrieben!!!

    @doc und marcellus:
    Das werde ich mal ausprobieren!!!

    Gruß und vielen Dank für eure Hilfe

    Olli
     
Thema:

variable in datei dauerhaft ändern und speichern

Die Seite wird geladen...

variable in datei dauerhaft ändern und speichern - Ähnliche Themen

  1. Textdatei zeilenweise in durchnummerierte Variablen schreiben

    Textdatei zeilenweise in durchnummerierte Variablen schreiben: Hi Leute, ich versuche folgendes Problem zu lösen. Ich möchte eine Textdatei einlesen und den Inhalt jeder Zeile in immer eine neue Variable...
  2. Screen output in variable oder datei

    Screen output in variable oder datei: Hallo Unixvoard-Nutzer :winke:, Ich habe in screen eine konsole y offen und eine konsole x im hintergrund. Ich bin in konsole y und möchte an...
  3. Dateiname einer Befehlsausgabe als Variable festlegen

    Dateiname einer Befehlsausgabe als Variable festlegen: Hallo zusammen, ich suche mit pdfgrep -H -R 1528/12/11 *nach einem bestimmten Ausdruck. Ausgabe ist z.B.: ---------- 305448.pdf:Mein...
  4. awk: Dateiinhalt/Variableninhalt als Teil einer if-Anweisung

    awk: Dateiinhalt/Variableninhalt als Teil einer if-Anweisung: Hallo Ich habe folgendes Problem: Anhand dem Ergebnis einer Datenbankabfrage habe ich mir mit sed usw. einen String gebastelt und in einer Datei...
  5. Nach Muster in Datei suchen und durch Variable ersetzen

    Nach Muster in Datei suchen und durch Variable ersetzen: Hallo, ich bekomme es einfach nicht hin, ich will in meinem Script eine Datei durchsuchen nach ${xxxxx} und die dann durch eine Variable mit dem...