I am writing a backup script which uses a function to create a tar archive for a specified directory. For some reason though I cannot get tar to exclude a specified path when passed as a variable. The problem does not seem to be with the command though as it works when entered in the script directly.
Here are the relevant portions of the script:
This works except the specified directory is not excluded. If I put an 'echo' in front of the tar command it shows the $BUP_EXCLUDE variable is being set and with what I would expect. e.g.
Wondering if the use of putting the whole exclusion option in a variable was a problem, as a test I rewrote the command as
This did not make any different though. As a final test I put the exclusion directly in the tar command
This worked, the archive was created with the required path excluded. This leads me to think there is some problem with the shell passing the variable correctly rather than with the tar command. The wildcard is supposed to be a literal for tar to do its own pattern matching, and by testing with echo in front of the tar command it does seem to be passed as one, there is no globbing. I have even tried putting quotes around the $BUP_EXCLUDE" variable in the tar command to see if that helps with no effect.
The shell is BASH version 3.00.15 and I have tried searching for a solution with no luck so I hope I am missing something obvious here.
dear all
i trying to list all files within a directory. I want to exclude all subdirectory and some files, with using below statement, but it not exclude the files which start with "&" and end with "SL" , is there any things wrong with the below statement ?
TIA
cd /myaccount/mydirectory... (6 Replies)
Hello,
I'm looking for a bit of help. Im trying to search a file for lines that contain white spaces at the end of the lines. This is what I'm using where $param is the path and file name and it redirects the output to a txt file :
echo | grep -n ' $' $param >> $2
Is it possible to have... (8 Replies)
Hi all,
My need is to search for a given string "toto" within a directory, but the search should ignore binary and db files.
It is in fact, a combination of xargs grep that I didn't succeed to manage.
Let we say that we are under /etc/ and we want to search for all included files (except... (9 Replies)
Hi all,
4 files are returned when i issue 'find . -mtime -1 -type f -ls'.
./ora_475244.aud
./ora_671958.aud
./ora_934052.aud
./ora_934050.aud
However, when I issued the below command:
tar -cvf test.tar `find . -mtime -1 -type f`, the tar file only contains the 1st file -... (2 Replies)
Hello Can you please help and check what im missing on script below
the goal is to delete the old files more than 7 days old but not the excluded file list inside excluded.dat file
#!/bin/sh
EXCLUDE=/path/to/exclude/exclude.dat
FIND=/bin/find
for xfile in '(read $EXCLUDE)'
do
$FIND... (9 Replies)
I have a file with the contents below
jan_t=jan;feb_t=feb;mar_t=mar;year=2010
jan_t=null;feb_t=feb;mar_t=mar;year=2010
jan_t=jan;feb_t=feb;mar_t=mar;year=2010
I want to extract out all the fields values ending with "_t" , however, i want to exclude feb_t and mar_t from the results
In... (6 Replies)
Hi all,
I have a tar file and inside that tar file is a folder with additional tar.gz files. What I want to do is look inside the first tar file and then find the second tar file I'm looking for, look inside that tar.gz file to find a certain directory. I'm encountering issues by trying to... (1 Reply)
Can i use mutual exclusion of particular args and force script to exit if both are specified?
while getopts l:d: OPTS; do
case $OPTS in
l) VALUE1=$OPTARG;;
d) VALUE2=$OPTARG;;
*) echo "$USAGE" && exit 2;;
# Here i want to exit if both -l and -d are specified
... (1 Reply)
I have a large file (file1) that has 96770154 lines and a smaller file (file2) that has 3 lines. I want to remove all of the strings from file1 that occur in file2.
file1 looks like this:
DOGDOGNODOGTESTCAT
CATHELLOBYEEBYEFAT
CATCATDOGDOGCATYESGOOD
file2 looks like this:
YES... (10 Replies)
Discussion started by: verse123
10 Replies
LEARN ABOUT DEBIAN
virt-tar-out
virt-tar-out(1) Virtualization Support virt-tar-out(1)NAME
virt-tar-out - Pack a virtual machine disk image directory into a tarball.
SYNOPSIS
virt-tar-out -a disk.img /dir files.tar
virt-tar-out -d domain /dir files.tar
virt-tar-out -d domain /dir - | gzip --best > files.tar.gz
DESCRIPTION
"virt-tar-out" packs a virtual machine disk image directory into a tarball.
The first parameter is the absolute path of the virtual machine directory. The second parameter is the tar file to write. Use "-" to
write to standard output.
EXAMPLES
Download the home directories from a guest:
virt-tar-out -d MyGuest /home - | gzip --best > homes.tar.gz
JUST A SHELL SCRIPT WRAPPER AROUND GUESTFISH
This command is just a simple shell script wrapper around the guestfish(1) "tar-out" command. For anything more complex than a trivial
copy, you are probably better off using guestfish directly.
OPTIONS
Since the shell script just passes options straight to guestfish, read guestfish(1) to see the full list of options.
SEE ALSO guestfish(1), virt-cat(1), virt-copy-in(1), virt-copy-out(1), virt-edit(1), virt-tar-in(1), <http://libguestfs.org/>.
AUTHORS
Richard W.M. Jones ("rjones at redhat dot com")
COPYRIGHT
Copyright (C) 2011 Red Hat Inc. <http://libguestfs.org/>
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation,
Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
libguestfs-1.18.1 2013-12-07 virt-tar-out(1)