source: trunk/DataCheck/Archive/auxIngest.sh@ 12752

Last change on this file since 12752 was 12750, checked in by lyard, 14 years ago
added ingest stuff
  • Property svn:executable set to *
File size: 2.5 KB
Line 
1#!/bin/bash
2
3sourceFolder=$1
4destFolder=$2
5
6if [ "$#" != "2" ]
7then
8 echo "Please specify source and dest folders. Aborting"
9 exit
10fi
11
12if [ $1 == "" ]
13then
14 echo "Source folder is empty. Aborting"
15 exit
16fi
17
18if [ $2 == "" ]
19then
20 echo "Dest folder is empty. Aborting"
21 exit
22fi
23
24#first let's make sure that source and dest folders do exist, and that dest is writable
25if [ -d $1 ]
26then
27 sourceFolder=$1
28else
29 echo "Source folder "$1" does not exist (or cannnot be read.) Aborting"
30 exit
31fi
32
33if [ -d $2 ]
34then
35 if [ -d $2"/etiennetest" ]
36 then
37 echo "Test folder already exist. Aborting"
38 exit
39 fi
40 mkdir $2"/etiennetest" 2>/dev/null
41 if [ -d $2"/etiennetest" ]
42 then
43 rm -rf $2"/etiennetest"
44 destFolder=$2
45 else
46 echo "Dest folder is not writable. Aborting"
47 exit
48 fi
49else
50 echo "Dest folder does not exist. Aborting"
51 exit
52fi
53
54#files=`ls $destFolder`
55#if [ "$files" != "" ]
56#then
57# echo "Dest folder is not empty. Aborting"
58# exit
59#fi
60sourceFolder=${sourceFolder%/}
61destFolder=${destFolder%/}
62echo "Will start ingesting files from "$sourceFolder" to "$destFolder
63
64#list all the files in sourceFolder, and copy then with the same structure to destfolder
65
66entries=`find $sourceFolder -type f -name '*.fits' | sort`
67
68for entry in ${entries[@]}
69do
70 #first construct the correct file name
71 targetFileName=`correctFileName $entry`
72 #second construct the destination path.
73 filenameonly=${entry##*/}
74 pathonly=${entry%$filenameonly}
75 extrapathonly=${pathonly#$sourceFolder/}
76 targetFolder=$destFolder"/"$extrapathonly
77 if [ ! -d $targetFolder ]
78 then
79 mkdir -p $targetFolder
80 fi
81
82 #check if the file already exist there
83 targetFile=$targetFolder"/"$targetFileName
84 echo "$targetFile"
85 if [ -a $targetFile ]
86 then
87 echo "File $targetFile already exist. Skipping it" >> report.txt
88 continue
89 fi
90 cp $entry $targetFile
91 #if not, do the copying, fixing and checking
92
93# grouping=`/home/isdc/lyard/FACT++/fitsdump $targetFile -h 2>/dev/null | grep GROUPING`
94
95# grouping=`grep 'GROUPING' "temp.txt"`
96
97# if [ "$grouping" == "" ]
98# then
99
100 repairAuxFile.sh $targetFile ENDerrors.txt MJDerror.txt report.txt processErrors.txt
101
102 if [ -a $targetFile ]
103 then
104 fixAuxKeyWords.sh $targetFile reportTwo.txt processErrors.txt
105 result=`fverify $targetFile 2>/dev/null | grep '0 error(s)'`
106 if [ "$result" == "" ]
107 then
108 echo "$targetFile" >> stillHasProblems.txt
109 rm $targetFile
110 fi
111 fi
112done
113
114#set the correct permissions
115find $destFolder -type f -exec chmod 640 {} \;
116find $destFolder -type d -exec chmod 750 {} \;
117find $destFolder -exec chgrp fact {} \;
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
Note: See TracBrowser for help on using the repository browser.