7 source ${0%${script}}ulib.sh
 
    9 set_variable:  DEBUG        ARCHIVE_DEBUG       2
 
   12     usage "$script  <path>  [<detector identifier>  [<type>  [version  [<min run>  [<max run>  [option]]]]]]"\
 
   13           "\nUtility script to list files in archive."\
 
   14           "\nPossible options short or long."
 
   18     7)  set_variable   OPTION    ${argv[7]};&
 
   19     6)  let            MAXRUN="  ${argv[6]}";&
 
   20     5)  let            MINRUN="  ${argv[5]}";&
 
   21     4)  set_variable   VERSION   ${argv[4]};&
 
   22     3)  set_variable   TYPE      ${argv[3]};&
 
   23     2)  let            ID="      ${argv[2]}";&
 
   24     1)  set_variable   DIR       ${argv[1]:a};;
 
   25     *)  fatal "Wrong number of arguments."
 
   28 if [[ ! -d $DIR ]]; then
 
   29     fatal "Invalid path $DIR"
 
   32 if [[ "$OPTION" != "" ]] && [[ "$OPTION" != "short" ]] && [[ "$OPTION" != "long" ]]; then
 
   33     fatal "Invalid option $OPTION"
 
   40 if   (( $# == 1 )); then
 
   42     ls -1 $DIR/ | grep -E ${ANY_ID}         |  sed -n 's/^0*//p'
 
   44 elif (( $# == 2 )); then
 
   48 elif (( $# == 3 )); then
 
   50     ls -1 $DIR/$ID/$TYPE | sed 's/^_//';
 
   52 elif (( $# == 4 )); then
 
   54     ls -1 $DIR/$ID/$TYPE/_$VERSION          |  sed -n 's/^0*//p'
 
   56 elif (( $# == 5 )); then
 
   58     ls -1 $DIR/$ID/$TYPE/_$VERSION/$MINRUN  |  sed -n 's/^0*//p'
 
   60 elif (( $# >= 6 )); then
 
   64     for BUFFER in $(ls -1 $DIR/$ID/$TYPE/_$VERSION/$MINRUN/$MAXRUN); do
 
   65         if   [[ "$FILENAME" == "" ]] || (( ${BUFFER:r} > ${FILENAME:r} )); then
 
   70     if [[ -n $FILENAME ]]; then
 
   73             _short) echo "$FILENAME";;
 
   74             _long)  echo "$DIR/$ID/$TYPE/_$VERSION/$MINRUN/$MAXRUN/$FILENAME";;