
Ich versuche, wget in einem einfachen Bash-Skript zu verwenden, um ein JPEG-Bild von einer Axis-Kamera abzurufen. Dieses Skript gibt eine Datei mit dem Namen JPEGOUT aus, statt der gewünschten Ausgabe, die ein JPEG mit Zeitstempel sein sollte (z. B. 201209292040.jpg). Wenn die Variable in der wget-Anweisung von JPEGOUT in $JPEGOUT geändert wird, schlägt wget mit dem Fehler „wget: URL fehlt“ fehl.
Das Merkwürdige ist, dass wget die Variable $IP korrekt analysiert. Beim Ausgabedateinamen hatte ich kein Glück. Ich habe einfache Anführungszeichen, doppelte Anführungszeichen und Klammern ausprobiert, aber alles ohne Erfolg.
Hier ist das Skript
!/bin/bash
IP = 1 USD
JPEGOUT= Datum +%Y%m%d%H%M.jpg
wget -O JPEGOUT http://$IP/axis-cgi/jpg/image.cgi?resolution=640x480&compression=25
Irgendwelche Ideen, wie der Ausgabedateiname richtig analysiert werden kann?
Antwort1
JPEGOUT= date +%Y%m%d%H%M.jpg
gibt einen Fehler aus. Versuchen Sie:
#!/bin/bash
IP=$1
JPEGOUT=$(date +%Y%m%d%H%M.jpg)
wget -O $JPEGOUT http://$IP/axis-cgi/jpg/image.cgi?resolution=640x480&compression=25
Antwort2
Verwenden Sie die Befehlsersetzung, um den Datumsbefehl auszuführen und die Ausgabe abzurufen:
JPEGOUT=`date +%Y%m%d%H%M.jpg`