simbadc> # Queries should default to returning text data.
simbadc> set type txt
simbadc> # Get the standard data on Arcturus, capturing
simbadc> # the output in arcturus.data
simbadc> queryObjectById Arcturus >arcturus.data
simbadc> # Queries should default to returning VO data.
simbadc> set type vo
simbadc> # Do a url query, capturing its results.
simbadc> url_query id Ident 3c273 >3c273.data
simbadc> # Execute a script file, capturing its results.
simbadc> script_file m31.simbad4 >m31.data
simbadc> # We are done.
The intent here is to be able to collect data from the SIMBAD database
on an ad-hoc basis. Most commands map directly to
This script uses Term::ReadLine for user interaction, though it can
also be used as a traditional Unix filter. Command parsing is fairly
simple. Text::ParseWords is used to split the line into tokens, with
the first token being the command/method name.
If a token begins with > or >>, the rest of the token represents
the name of a file to which the output of that command is redirected.
The > overwrites an existing file, while >> appends to it. There
can be no space between the > or >> and the file name.
A token beginning with << introduces a here document, which appears
on subsequent lines of input. The rest of the token represents the text
which marks the end of the here document. If the script is being run
interactively, the end text will also be used as the prompt. For
simbadc> set format <<eod
specifies a format to be used for a txt mode query. Note that
simbadc> set format txt=<<eod
is <B>notB> equivalent; the <<eod must be a token all by itself.
If a token begins with <, the rest of the token is taken as a file
name, and the contents of the file are substituted for the token. Note
that this does <B>notB> give a mechanism for feeding commands from a file,
since the contents of the input file are not parsed. It does, however,
give a less painful way to test tweaks of complex formats.
The following commands are implemented by this script, in addition to
(or in lieu of) the commands documented in Astro::SIMBAD::Client:
Any command not named above is assumed to be an Astro::SIMBAD::Client
method, and called. Whatever the method returns is displayed,
unless the return is an Astro::SIMBAD::Client object.
default (attribute_name ...)
This command resets the values of the named attributes to their static
This command terminates the script. It is simply a wrapper for
CORE::exit. End-of-file also works.
This command displays the documentation for this script. If you use
simbadc> help client
You get Astro::SIMBAD::Client.
show (attribute ...)
This command is a slightly more command-friendly wrapper for the
get() method. If given no arguments, all are displayed. The output
is formatted as set commands.
This is not really a command, but when prefixed to a method name causes
that method to be called as a static method. For example,
simbadc> static set type vo
Causes the default query type to be vo.
See Astro::SIMBAD::Client for the details.
Copyright (C) 2005-2016 Thomas R. Wyant, III
This program is free software; you can redistribute it and/or modify it
under the same terms as Perl 5.10.0. For more details, see the full text
of the licenses in the directory LICENSES.
This program is distributed in the hope that it will be useful, but
without any warranty; without even the implied warranty of
merchantability or fitness for a particular purpose.