Added do_copy_files
This commit is contained in:
parent
dc526eaef0
commit
e65a92f662
1 changed files with 32 additions and 0 deletions
32
extras/do_copy_files
Executable file
32
extras/do_copy_files
Executable file
|
@ -0,0 +1,32 @@
|
|||
#!/bin/bash
|
||||
# $Id$
|
||||
set -e
|
||||
|
||||
: <<inline_doc
|
||||
desc: Copy files from one dir to another dir using tar
|
||||
usage: do_copy_files $PRUNEPATH $ROOT_DIR $DEST_DIR
|
||||
input vars: $1 list of dirs that must be skipped by tar
|
||||
$2 the root dir of the files that will be copied
|
||||
$3 the dir where the copied files will be placed
|
||||
externals: --
|
||||
modifies: --
|
||||
returns: --
|
||||
on error:
|
||||
on success:
|
||||
inline_doc
|
||||
|
||||
TMP_FILE=/tmp/prunelist
|
||||
|
||||
# Create a file that we can pass to tar as an "exclude list".
|
||||
# There might be an easier way to achieve tar exclusions? Strip
|
||||
# the leading /.
|
||||
for F in $1 ; do
|
||||
echo ${F#*/} >> $TMP_FILE
|
||||
done
|
||||
|
||||
mkdir -p $3
|
||||
cd $2
|
||||
tar -X $TMP_FILE -cf - . | tar -C $3 -xf -
|
||||
|
||||
# Clear out the temporary file
|
||||
rm -f ${TMP_FILE}
|
Reference in a new issue