ESO Archive Frequently Asked Questions

Data Request: How does the download script work?

The download script (e.g. downloadRequestXXXXXXscript.sh) is based on a file transfer tool called WGET.

To run it, you need to have WGET installed and working on command line. This package is usually installed by default in Linux, but not in MacOSX or Windows.

The usage of the download script is as follows:

usage: downloadRequestXXXXXXscript.sh [-hlp] [-u user] [-X args] [-d args]
         -h            print this help text
         -l            print list of files to download
         -p            prompt for password
         -u username   download as a different user
         -X args       extra arguments to pass to xargs
         -d args       extra arguments to pass to the download program

If the script doesn't work and returns an error message mentioning "...use `--no-check-certificate’".
Please run it as follows:

./downloadRequestXXXXXXscript.sh -d "--no-check-certificate"

If you run the download script without any option:

  • You will be asked to enter your password. If you would like to avoid this, you can create a .netrc file in your home directory with the following entry:
     machine dataportal.eso.org login USERLOGIN password USERPASSWORD
    

    We recommend to ensure that your .netrc file is protected, e.g. by

    chmod go-rxw .netrc

  • If there is already a .netrc file with an entry related to the dataportal hostname in your home directory, the download will start without prompting for your password.
    The download will fail if credentials in the .netrc file are wrong.

Note that if the options -p (prompt for password) or -u username (to use another account for download) are specified, you will be prompted for your password, whatever the state of the .netrc file is.

EXAMPLES:

  1. Run the download script without any input:
    ./downloadRequestXXXXXXscript.sh
    

    The script will prompt for the password. The advantage is that the password will not be visible in the command history and there is no need to store it in an environment variable. The main drawback is that some interaction is required between the script and the user who will be prompted for his/her password.

  2. Create a .netrc, then the download script can be run as:
    ./downloadRequestXXXXXXscript.sh
    

    the download will start without prompting for a password and your password will not be visible.

  3. Echo for the password to avoid having it prompted:
    echo -n PASSWORD | ./downloadRequestXXXXX.script.sh
    

    the advantage is that again no interaction is required, the drawback is that the password will show up in the history unless it is stored in an environment variable.