On 02/04/2010 09:12 PM, Dotan Cohen wrote:
I hope there is a bash guru out there today. I need to script a backup
plan which has a list of directories that should not be backed up.
Some of these directories have spaces in their filenames. The
following script works so long as there are no directories with spaces
in DONT_COPY, however, I cannot figure out what to do to get it to
work _with_ spaces in filenames:

#!/bin/bash

DONT_COPY="
.adobe/
File with Spaces
.bin/google-earth
Yet Another Annoying Filename
"

DONT_COPY_LIST=""
for pattern in $DONT_COPY ; do DONT_COPY_LIST="$DONT_COPY_LIST
--exclude=$pattern "; done
tar -zcvf - * $DONT_COPY_LIST


Any ideas? Thanks!


Set IFS to newlines only:

IFS=$'\n'

BTW, why don't you use -X or --exclude-from ? From man:

       -X, --exclude-from=FILE
              exclude files matching patterns listed in FILE

Cheers
--
Meir

_______________________________________________
Linux-il mailing list
[email protected]
http://mailman.cs.huji.ac.il/mailman/listinfo/linux-il

Reply via email to