Jpp  18.2.1-ARCA-DF-PATCH
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
getFile.sh
Go to the documentation of this file.
1 #!/bin/zsh
2 #
3 # \author mdejong
4 #
5 script=${0##*/}
6 
7 source ${0%${script}}ulib.sh
8 
9 set_variable: DEBUG ARCHIVE_DEBUG 2
11 
12 if do_usage $*; then
13  usage "$script <path> <detector identifier> <run> <type> [version] <output file>"\
14  "\nUtility script to retrieve file from archive."\
15  "\nNote that extension from name of file in archive is taken."
16 fi
17 
18 case $# in
20  5) set_variable DIR $argv[1];
21  let ID=" $argv[2]";
22  let RUN=" $argv[3]";
23  set_variable TYPE $argv[4];
25  *) fatal "Wrong number of arguments."
26 esac
27 
28 if [[ ! -d $DIR ]]; then
29  fatal "Invalid path $argv[1]"
30 fi
31 
32 if (( $ID == 0 )); then
33  fatal "Invalid detector identifier $argv[2]"
34 fi
35 
36 if (( $RUN == 0 )); then
37  fatal "Invalid run $argv[3]"
38 fi
39 
40 setopt extendedglob
41 
42 typeset -Z8 ID
43 
44 let COUNTER="0"
45 INPUT_FILE=""
46 
47 if [[ -d $DIR/$ID/$TYPE ]]; then
48 
49  typeset -T BUFFER ARRAY /
50 
51  eval ls -1 $DIR/$ID/$TYPE/_${VERSION}/\*/\*/\* 2> /dev/null | while read BUFFER; do
52 
53  set_variable A_ID ${ARRAY[-6]}
54  set_variable A_TYPE ${ARRAY[-5]}
55  set_variable A_VERSION ${ARRAY[-4]#_}
56  let A_MINRUN=" ${ARRAY[-3]}"
57  let A_MAXRUN=" ${ARRAY[-2]}"
58  set_variable A_FILENAME ${ARRAY[-1]}
59 
60  let A_COUNTER="${A_FILENAME:r}"
61 
62  if (( $RUN >= $A_MINRUN && $RUN <= $A_MAXRUN )); then
63  if (( $A_COUNTER > $COUNTER )); then
64  let COUNTER="$A_COUNTER"
65  INPUT_FILE=$BUFFER
66  fi
67  fi
68  done
69 else
70  fatal "No archive $DIR/$ID/$TYPE"
71 fi
72 
73 if [[ -z $INPUT_FILE ]]; then
74  fatal "No corresponding files found in archive $DIR"
75 fi
76 
78 
79 if [[ -f $OUTPUT_FILE ]]; then
80  fatal "File $OUTPUT_FILE already exists."
81 fi
82 
83 cp -p $INPUT_FILE $OUTPUT_FILE
84 
85 if (( $? == 0 )); then
86  notice "Stored archive:$INPUT_FILE to $OUTPUT_FILE"
87 else
88  fatal "File $INPUT_FILE not retrieved from archive."
89 fi
then usage $script< detector identifier >< startdate\"YYYY-MM-DDHH:MM:SS\"><finaldate\"YYYY-MM-DDHH:MM:SS\"><QA/QCfile> fi case set_variable QAQC_TXT $argv[4]
Definition: JDataMonitor.sh:24
std::istream & read(std::istream &in, JTestSummary &summary, const char delimiter= ' ')
Read test summary.
esac done BUFFER
Definition: JMakePDF.sh:83
o $QUALITY_ROOT d $DEBUG!CHECK_EXIT_CODE JPlot1D f
Definition: JDataQuality.sh:76
then
Definition: datalogs.sh:31
then fatal Wrong number of arguments fi DIR
do set_variable A_ID
Definition: getFile.sh:53
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
Definition: JAcoustics.sh:21
do set_variable OUTPUT_DIRECTORY $WORKDIR T
then fatal Invalid run $argv[3] fi setopt extendedglob typeset Z8 ID let COUNTER
Definition: getFile.sh:44
then rm i $OUTPUT_FILE fi let RUN
#define VERSION
Definition: elog-version.h:27
* usage
then JFileTuna f $INPUT_FILE
Definition: file-Tuna.sh:66
&set_variable OUTPUT_FILE
set_variable INPUT_FILE
then ls $DIR $ID
Definition: getArchive.sh:85
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
Definition: JMuonPath.sh:47
then cp
then eval ls $DIR $ID $TYPE _
Definition: getArchive.sh:104
static JNullStream null
Null I/O stream.
Definition: JNullStream.hh:51
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY JAcoustics sh $DETECTOR_ID source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS for EMITTER in
Definition: JCanberra.sh:46
script
Definition: JAcoustics.sh:2
esac done
Definition: JAddHDE.sh:21
#define DEBUG(A)
Message macros.
Definition: JMessage.hh:62