kleines curl Problem

Diskutiere kleines curl Problem im Programmieren allgemein Forum im Bereich Programmieren unter Linux/Unix; Hallo, ich bin LINUX Frischling und hab mich ein wenig in eien Sackgasse verlaufen... Ich habe vor, die Verzeichnisgröße via curl Befehl in eine...

  1. sp1k3

    sp1k3 Grünschnabel

    Dabei seit:
    19.01.2020
    Beiträge:
    9
    Zustimmungen:
    0
    Hallo, ich bin LINUX Frischling und hab mich ein wenig in eien Sackgasse verlaufen...

    Ich habe vor, die Verzeichnisgröße via curl Befehl in eine app zu übergeben.
    zur Zeit kann ich einen "TEXT" direkt übergeben, aber ich scheitere an dem Rest.

    So übergebe ich den Text:

    curl -X POST -H 'Content-type: application/jason' --data '{"text":"Testtext"}' Ziel-URL
    Das klappt auch wunderbar, aber ich muss nun "Testtext" durch die Verzeichnisgröße eines Ordners erstezen (du -h $ordnername zum Beispiel)

    leider fehlen mir die Grundkenntnisse dafür, eventuell kann mir ja jemand auf die Sprünge helfen ;-)

    Danke im Voraus
     
  2. Anzeige

    Anzeige

    Wenn du mehr über Linux erfahren möchtest, dann solltest du dir mal folgende Shellkommandos anschauen.


    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. marce

    marce Kaiser

    Dabei seit:
    01.08.2007
    Beiträge:
    1.259
    Zustimmungen:
    19
    while, cut (oder awk), <$(du-Aufruf)
     
  4. sp1k3

    sp1k3 Grünschnabel

    Dabei seit:
    19.01.2020
    Beiträge:
    9
    Zustimmungen:
    0
    Hallo marce, vielen Dank für deine Antwort. Habe gestern herum experimentiert und ein kleines batch Script gebastelt, welches die gewünschte Ordnergröße in eine Vareabele packt ($ordnergroesse), die müsste ich nur irgendwie mit ausgeben, aber ich hab es nach 2 Stunden lesen in Foren und Anleitungen aufgegeben.
    Was muss ich tun um "Testtext" durch die Vareabele zu ersetzen?

    Gruß
    Sp1K3
     
  5. marce

    marce Kaiser

    Dabei seit:
    01.08.2007
    Beiträge:
    1.259
    Zustimmungen:
    19
    die Variable dort einfach reinschreiben und ggf. drumherum die " und ' entsprechend quoten.
     
  6. sp1k3

    sp1k3 Grünschnabel

    Dabei seit:
    19.01.2020
    Beiträge:
    9
    Zustimmungen:
    0
    Ja, genau das habe ich mit herum experimieren ja gemeint ich hab gefühlte 20 Kombinationen ausprobiert, aber als Anfänger ist das nicht so einfach.
     
  7. sp1k3

    sp1k3 Grünschnabel

    Dabei seit:
    19.01.2020
    Beiträge:
    9
    Zustimmungen:
    0
    Hab jetzt alle Möglichkeiten die Variabele ($msg) auszugeben durchexerziert, bekomme immer nur eine Fehlermeldung, gebe es langsam auf...

    So sieht mein kleines Script jetzt aus:

    #!/bin/bash

    ordnergroesse="`du -sh $root`"
    msg="BackupAggregator: Komplett-Backup des Live-Systems erledigt :-)! - Ordnergröße ist "$ordnergroesse
    echo $msg

    curl -X POST -H 'Content-type: application/json' --data '{"text":<$(du -sh $root)}' URL........
     
  8. #7 HeadCrash, 23.01.2020
    HeadCrash

    HeadCrash Routinier

    Dabei seit:
    16.05.2009
    Beiträge:
    495
    Zustimmungen:
    2
    Ort:
    Bayern
    Morgen,

    das Problem liegt einfach das Variablen die in Singlequotes stehen als Text behandelt werden:

    Code:
    root@jinx:/tmp# cat vardump.sh
    #!/bin/bash
    
    vardump="VAR"
    
    echo '{"text"::"${vardump}"}'
    echo '{"text"::"'${vardump}'"}'
    
    Code:
    root@jinx:/tmp# ./vardump.sh
    {"text"::"${vardump}"}
    {"text"::"VAR"}
    

    ->> echo '{"text"::" ' ${vardump} ' "}'

    mfg
    HeadCrash
     
  9. sp1k3

    sp1k3 Grünschnabel

    Dabei seit:
    19.01.2020
    Beiträge:
    9
    Zustimmungen:
    0
    Irgendwie scheine ich mich falsch auszudrücken,

    das echo $msg klappt einwandfrei, was nicht funktioniert ist der curl Befehl

    nach "text" muss ich die Variabele $msg übergeben, aber jegliche Art der Setzung von Hochkommata, Anführungszeichen noch sonstiger Zeichen die mir in dem Zusammenhang dazu einfallen funktioniert.

    Code:
    #!/bin/bash
    
    msg="BackupAggregator: Komplett-Backup des Live-Systems erledigt :-)! - Ordnergröße ist `du -sh $root` "
    
    curl -X POST -H 'Content-type: application/json' --data '{"text":"$msg"}' URL....
    
    Leider muss ich im Script hier URL.... schreiben, da ich noch keine LINKS Posten darf
     
  10. #9 HeadCrash, 23.01.2020
    HeadCrash

    HeadCrash Routinier

    Dabei seit:
    16.05.2009
    Beiträge:
    495
    Zustimmungen:
    2
    Ort:
    Bayern
    Nö, du schreibst nicht falsch, das Problem ist, das Variablen als Text behandelt werden, wenn sie in Singlequotes stehen.

    Versuchs doch mal mit

    Code:
    curl -X POST -H 'Content-type: application/json' --data '{"text":"'$msg'"}' URL....
    
    Farbe geht im Code-Tag verloren
    --data '{"text":"'$msg'"}'
     
  11. sp1k3

    sp1k3 Grünschnabel

    Dabei seit:
    19.01.2020
    Beiträge:
    9
    Zustimmungen:
    0
    Hab ich, heraus kommt:


    root@devwolfgang:~# ./test1.sh
    curl: option -: is unknown
    curl: try 'curl --help' or 'curl --manual' for more information
    root@devwolfgang:~#

    und der Server bekommt nichts
     
  12. marce

    marce Kaiser

    Dabei seit:
    01.08.2007
    Beiträge:
    1.259
    Zustimmungen:
    19
    ... und wie sieht test1.sh aus?
    ... und bitte [ code]-Tags verwenden.
     
  13. #12 sp1k3, 24.01.2020
    Zuletzt bearbeitet: 24.01.2020
    sp1k3

    sp1k3 Grünschnabel

    Dabei seit:
    19.01.2020
    Beiträge:
    9
    Zustimmungen:
    0
    Siehe Posting von gestern, da ist - bis auf die Ziel URL - alles drin

    in der ersten Zeile das übliche um ein batch script einzuleiten,

    dann weise ich der Vareabelen msg einen Inhalt zu (in alten scripten habe ich die testweise mit echo ausgeben lassen)
    und in der letzten Zeile der curl befehl, der auf dem Server eine Nachricht $msg ausgeben soll. Wenn ich einen festen Text benutze klappt die Ausgabe ja...
     
  14. #13 HeadCrash, 24.01.2020
    HeadCrash

    HeadCrash Routinier

    Dabei seit:
    16.05.2009
    Beiträge:
    495
    Zustimmungen:
    2
    Ort:
    Bayern
    Starte das Skript Mal bitte mit

    Code:
    bash -x test1.sh
    
    Und poste die Ausgabe.
     
  15. sp1k3

    sp1k3 Grünschnabel

    Dabei seit:
    19.01.2020
    Beiträge:
    9
    Zustimmungen:
    0
    root@devwolfgang:~# bash -x test1.sh
    ++ du -sh
    + msg='BackupAggregator: Komplett-Backup des Live-Systems erledigt :-)! - Ordnergröße ist 3,6M . '
    + curl -X POST -H 'Content-type: application/json' --data '{"text":"BackupAggregator:' Komplett-Backup des Live-Systems erledigt ':-)!' - Ordnergröße ist 3,6M . '"}' URL.....
    curl: option -: is unknown
    curl: try 'curl --help' or 'curl --manual' for more information
    root@devwolfgang:~#
     
  16. sp1k3

    sp1k3 Grünschnabel

    Dabei seit:
    19.01.2020
    Beiträge:
    9
    Zustimmungen:
    0
    Habe es endlich raus:


    Code:
    #!/bin/bash
    
    
    ordnergroesse="`du -sh $root`"
    
    curl -X POST -H 'Content-type: application/json' --data '{"text":"BackupAggregator: Komplett-Backup des Live-Systems erledigt :-)! - Ordnergröße ist '"${ordnergroesse}"'"}' ...URL
     
Thema:

kleines curl Problem

Die Seite wird geladen...

kleines curl Problem - Ähnliche Themen

  1. kleines 'k' am Anfang der OpenSSL Chipers

    kleines 'k' am Anfang der OpenSSL Chipers: Moin, vielleicht kann mir hier jemand die Antwort auf die Frage liefern wofür das kleine k in Ciphers steht, ich habe diese bis dato vorher noch...
  2. Suche kleines Live OS

    Suche kleines Live OS: Hallo, Ich suche ein kleines Live OS um zu sehen ob der Prozessor hochtaktet. Wie ist das zu realisieren? Hintergrund: Bei einem Dell Vostro...
  3. WRTnode: kleines Entwicklerboard mit WiFi und OpenWRT

    WRTnode: kleines Entwicklerboard mit WiFi und OpenWRT: Die Entwickler des WRTNode haben in China eine erste Beta-Version ihres preiswerten Entwicklerboards verkauft. Der WRTnode ist ein winziger...
  4. Android 4.3 - kleines Update mit interessanten Funktionen

    Android 4.3 - kleines Update mit interessanten Funktionen: Am 24.7. lud Googles Android-Chef Sundar Pichai zu einem Presse-Frühstück in New York, bei dem unter anderem auch Android 4.3 »Jelly Bean«...
  5. OLinuXino A13: kleiner Rechner für kleines Geld

    OLinuXino A13: kleiner Rechner für kleines Geld: Der bulgarische Elektronikhersteller Olimex bietet mit dem OLinuXino A13 einen kleinformatiges Motherboard an, das für viele Basteleien und...
  1. Diese Seite verwendet Cookies um Inhalte zu personalisieren. Außerdem werden auch Cookies von Diensten Dritter gesetzt. Mit dem weiteren Aufenthalt akzeptierst du diesen Einsatz von Cookies.
    Information ausblenden