getSAR.pl is now somewhat deprecated due to the availability of new APIs at the various archives. See the list below for resources to access and download data:

UNAVCO: http://facility.unavco.org/data/sar/sar_api_client.html
ASF: http://www.asf.alaska.edu/program/sdc/asf_api
Supersites: http://eo-virtual-archive4.esa.int/


getSAR.pl

getSAR.pl is a utility perl script I wrote for downloading synthetic aperture radar (SAR) data from various data archives. The script will require the user to have data priviledges with various archives and a username and password for accessing the data.

If you download and use getSAR, please send me an email, I would like to know. Also if you are having any problems, don't hesitate to ask, and please report any bugs.
THANKS!
Scott

Download, Configure, and Test

Download Here (Beta Version)
or
Run the following commands to download, configure, and test getSAR

wget -m -nd http://www.rsmas.miami.edu/personal/mbaker/software/getSAR_beta.tgz
tar xzf getSAR_beta.tgz
setenv GETSARHOME $cwd/getSAR
source $GETSARHOME/cshrc_getsar

If you are using bash:
export GETSARHOME=`pwd`/getSAR
source $GETSARHOME/bashrc_getsar

Usage and help
getSAR.pl -h

Command line examples
getSAR.pl source=asf track=162 startFrame=0180
getSAR.pl source=winsar satellite=Env track=127 startFrame=2781
getSAR.pl source=esa boundingBox=20.0000,-156.0000,18.0000,-153.0000 track=114 parallelDownloads=23

Template examples
getSAR.pl $GETSARHOME/examples/ASFExampleT605AlosD.template
getSAR.pl $GETSARHOME/examples/ESAExampleT200EnvD2.template
getSAR.pl $GETSARHOME/examples/WINSARExampleT200EnvD2.template

L'Aquila Earthquake Data from ESA

Using getSAR to download the L'Aquila data:
getSAR.pl url=http://laquila-earthquake.esa.int/ satellite=Env DataDir=$L0DIR/Laquila
getSAR.pl url=http://laquila-earthquake.esa.int/ satellite=Ers DataDir=$L0DIR/Laquila
This is a little slow for the first run (it takes several minutes) because it grabs a list of all available data at http://laquila-earthquake.esa.int/ and then downloads the satellite you want. Then second time you run it, it should go pretty fast because it uses the output file (called output.txt in download_URL) with the results of the webcrawler. If output.txt is more than a day old, it will crawl the site again to get an up-to-date list.

Troubleshooting:

If you are getting java errors, you may need to compile the java classes (you need java 1.5 or newer, java 1.4 or older will not work). In the $GETSARHOME/src folder there is a script called make.sh that will compile and move the classes to $GETSAR_BIN.
Type sh make.sh or ./make.sh to compile

How It Works:

When you source cshrc_getsar, a few environment variables are set to let getSAR.pl know where to download and move data as well as setting the path for the script to run. The default is the current working directory where you are sourcing $GETSARHOME/cshrc_getsar. If you wish to have the data stored somewhere else, you can set these variables in your .cshrc (this will be slightly different for bash users). I added the following lines to my .cshrc file:

setenv GETSARHOME /home/sbaker/getSAR
setenv L0DOWNLOADDIR /home/sbaker/L0DATA/download
setenv L0DIR /home/sbaker/L0DATA/
source $GETSARHOME/cshrc_getsar

Howard Zebker sent me an example bash script so I included it for those who use bash (Thanks Howard!).
Set the following in .bashrc:
export GETSARHOME=/home/sbaker/getSAR
export L0DIR=/home/sbaker/L0DATA
export L0DOWNLOADDIR=/home/sbaker/L0DATA/download
source $GETSARHOME/bashrc_getsar

Your usernames and passwords are stored in $GETSARHOME/username_password.txt. You can change them directly in the text file otherwise getSAR will prompt you for them and store them in the text file for future use.

Searching for data makes use of comma seperated value files provided by UNAVCO for WInSAR (http://winsar.unavco.org/datafiles4.csv) and ASF (http://winsar.unavco.org/allALOS.csv) and Eolisa for the ESA Supersites which is done automatically in getSAR, no need to download or update these files. The downloaded data can be organized into a directory structure that will be compared with what is available at the data archives (option: moveData=yes ; current doesn't work with ERS data, only Envisat and ALOS). This allows users to run a command and only get the data that they do not already have. The data are organized by satellite and track and each swatch or frame is places in it's own directory. WInSAR Envisat data is renamed to the ESA naming convention (from ENV***.baq to ASA_IMP***.N1) and a blank file with the original name is kept for searching purposes.

It is necessary to use the boundingBox with source=esa because there is no way to search by frame, so a certain track might have ascending/descending frames (which are on opposite sides of the world). This same logic can be applied to WInSAR and ASF as well. If you know the track and area, but not the specific frames, by giving a boundingBox only those frames for that track in your area will be downloaded. Alternatively, if you just want to download everything, simply specifying source, satellite, and boundingBox will download all the data for that area (the following will download all the ALOS and Envisat data for Hawaii):

getSAR.pl source=asf boundingBox=20.0000,-156.0000,19.0000,-154.0000
getSAR.pl source=winsar satellite=Env boundingBox=20.0000,-156.0000,19.0000,-154.0000
getSAR.pl source=esa boundingBox=20.0000,-156.0000,19.0000,-154.0000

The data archives:

Alaska SAR Facility (ASF) for ALOS PalSAR
WInSAR Consortium (from UNAVCO) for ERS and Envisat
European Space Agency (ESA) Supersites Inititive for Envisat (use EOLI-SA for searching)
TODO:
GeoEarthscope InSAR Archive (from UNAVCO) for ERS, Envisat, and Radarsat

If you are unfamiliar with these organizations and agencies, I suggest you visit their website and read about what they can offer.