The putsym program puts a header-line value into a true FITS or pseudo-FITS file (a pseudo-FITS file is an ASCII file with FITS-like keyword/value pairs at its beginning).
The syntax is:
putsym file=name [stanza=n] symbol=value [symbol=value ...] [--version]
If 'stanza' is not specified, the first stanza is used (this applies only to pseudo-FITS files, of course).
The program inserts the symbol if it does not already exist, or replaces the old value with the new one. if the specified file cannot be found, or if there is some problem inserting the value, a non-zero return code is returned and a message printed to stderr.
In order to insert a value with apostrophes surrounding it -- that is, an ordinary string value -- one must surround the quoted string with quotation marks.
This is the wrong way to do it:
$ more sample.fts SIMPLE = T / file does conform to FITS standard BITPIX = 16 / number of bits per data pixel NAXIS = 2 / number of data axes NAXIS1 = 2032 NAXIS2 = 2029 END $ putsym file=sample.fts observer="Fred Smith" $ more sample.fts SIMPLE = T / file does conform to FITS standard BITPIX = 16 / number of bits per data pixel NAXIS = 2 / number of data axes NAXIS1 = 2032 NAXIS2 = 2029 OBSERVER= Fred Smith END
This is the right way to do it:
$ putsym file=sample.fts observer="'Fred Smith'" $ more sample.fts SIMPLE = T / file does conform to FITS standard BITPIX = 16 / number of bits per data pixel NAXIS = 2 / number of data axes NAXIS1 = 2032 NAXIS2 = 2029 OBSERVER= 'Fred Smith' END