;------------------------------------------------------
;         Ecriture d'un fichier de commande IDL
; -----------------------------------------------------
;
;INPUTS:
;-------
;	fcmd:  nom du fichier de commande	string
;	       sans extension
;	s:     lignes de commande		strarr
;
;KEYWORDS:
;---------
;	LABEL:	pour le fichier LOG
; 	LATER:  execution differe
; 	APPEND: append du fichier de commande
;	GROUP:
;------------------------------------------------------

PRO rh_command_idl, fcmd, s, LATER = LATER, APPEND=APPEND, $
                 LABEL=LABEL, NOLOG = NOLOG, group = group
  
  fbil = fcmd+'.bil'
  cmdbil = " >&"+fbil
  acmdbil = " >>&"+fbil
  IF KEYWORD_SET(NOLOG) THEN BEGIN
      fbil='/dev/null'
      cmdbil = " >"+fbil
      acmdbil = " >"+fbil
  ENDIF
  
  IF KEYWORD_SET(APPEND) THEN BEGIN
     openw,  unit, fcmd+".cmd",/get_lun, /append
     IF KEYWORD_SET(LABEL) THEN $
        printf, unit, "echo "+LABEL+acmdbil
     printf, unit, "idl <<% "+acmdbil 
  ENDIF ELSE BEGIN
     openw,  unit, fcmd+".cmd",/get_lun
     printf, unit, "#!/bin/tcsh"
     IF KEYWORD_SET(LABEL) THEN BEGIN
        printf, unit, "echo "+LABEL+cmdbil
        printf, unit, "idl <<% "+acmdbil
     ENDIF ELSE printf, unit, "idl "+cmdbil
  ENDELSE

  printf, unit, "!QUIET=1"
  printf, unit, "t_elaps = systime(1)" 
  FOR i=0, N_ELEMENTS(s)-1 DO printf, unit, s(i)
  printf, unit, $
   "print, '        Duree du traitement = '+string(systime(1)-t_elaps)+' secondes'"
  printf, unit, $
   "print, '============================================================'"
  printf, unit, "exit"
  printf, unit, "%"
  close,  unit
  free_lun, unit
;  
  IF NOT KEYWORD_SET(LATER) THEN rh_command, fcmd, group=group

  RETURN

END
  
