Mercurial > hg > foxridge-archiver
annotate unarchivemany.sh @ 34:51d136834761
added error message for empty list file
author | casties |
---|---|
date | Fri, 23 Jun 2006 10:57:56 +0200 |
parents | 79c6618e8dfa |
children | e27d097a9d87 |
rev | line source |
---|---|
15
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
1 #!/bin/bash |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
2 |
34 | 3 VERSION="unarchivemany V0.2 (23.6.2006 ROC)" |
15
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
4 |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
5 if [ -z "$1$2" ] |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
6 then |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
7 echo $VERSION |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
8 echo "use: $0 docdir dirlist" |
34 | 9 echo " Unarchives the directories given in the file dirlist inside docdir." |
15
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
10 exit 1 |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
11 fi |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
12 |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
13 BASEDIR="$1" |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
14 DIRLIST="$2" |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
15 |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
16 if [ ! -d $BASEDIR ] |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
17 then |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
18 echo "ERROR: base directory $BASEDIR not found!" |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
19 exit 1 |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
20 fi |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
21 |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
22 if [ ! -f $DIRLIST ] |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
23 then |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
24 echo "ERROR: directory list file $DIRLIST not found!" |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
25 exit 1 |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
26 fi |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
27 |
34 | 28 CNT=0 |
29 | |
15
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
30 cat $DIRLIST | while read DIR |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
31 do |
34 | 32 CNT=$(( $CNT + 1 )) |
15
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
33 if [ -d "$BASEDIR/$DIR" ] |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
34 then |
34 | 35 echo "$CNT: unarchiving $DIR..." |
15
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
36 if /usr/local/mpiwg/archive/unarchiver "$BASEDIR/$DIR" |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
37 then |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
38 echo " done on `date`" |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
39 else |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
40 echo "FAILED!" |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
41 # abort? |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
42 fi |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
43 else |
34 | 44 echo "$CNT: ERROR: document directory $BASEDIR/$DIR not found!" |
15
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
45 fi |
8d2f0586eca6
new helper script for calling archiver on many directories
casties
parents:
diff
changeset
|
46 done |
34 | 47 |
48 if [ $CNT = 0 ] | |
49 then | |
50 echo "ERROR: the list file $DIRLIST seems to be empty!" | |
51 fi |