Variable parsing with Bash and wget

3

I'm attempting to use wget in a simple bash script to grab a jpeg image from an Axis camera. This script outputs a file named JPEGOUT, instead of the desired output, which should be a timestamp jpeg (ex: 201209292040.jpg) . Changing the variable in the wget statement from JPEGOUT to $JPEGOUT makes wget fail with "wget: missing URL" error.

The weird thing is wget parses the $IP vairable correctly. No luck on the output file name. I've tried single quotes, double quotes, parenthesis: all to no luck.

Here's the script

!/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

Any ideas on how to get the output file name to parse correctly?

Bill Westrup

Posted 2012-09-30T01:54:27.193

Reputation: 193

Answers

4

JPEGOUT= date +%Y%m%d%H%M.jpg throws an error. Try:

#!/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

Sly

Posted 2012-09-30T01:54:27.193

Reputation: 470

1

Use command substitution to run the date command and grab the output:

JPEGOUT=`date +%Y%m%d%H%M.jpg`

Nicole Hamilton

Posted 2012-09-30T01:54:27.193

Reputation: 8 987