Wildcard Characters in Filenames: Difference between revisions

From wiki.zmanda.com
Jump to navigation Jump to search
No edit summary
 
m (case preserved)
 
(10 intermediate revisions by 5 users not shown)
Line 1: Line 1:
--- This text was originally contributed to the AMANDA-FAQ-O-Matic by [email protected]. ---
#REDIRECT [[Amrecover: wildcard characters in filenames]]
 
 
If you have backed up files with shell metacharacters as part of the filename, and you are using Gnu tar as part of your Amanda backup process, you may notice that you can no longer pull the files out. The symptoms are:
 
  amrecover> add *asid=\[101\]*
  Added /joe_asid=[101].gz
  amrecover> extract
  Extracting files using tape drive /dev/nst0 on  host xyz.com.
  The following tapes are needed: big1
  Restoring files into directory /tmp
  Continue? [Y/n]: y
  Load tape big1 now
  Continue? [Y/n]: y
  tar: ./joe_asid=[101].gz: Not found in archive
  tar: Error exit delayed from previous errors
 
The solution can be one of a number of things:
 
1. Try to make Gnu tar treat shell metacharacters
(like [ and ] and *) as normal characters. I'm not sure this is possible, and I haven't tried.
 
2. Edit the amrecover source code to make it escape shell metacharacters.
 
3. Use amrestore instead of amrecover so that you can escape the filenames you're interested in, eg:
 
  $ mt -f /dev/nst0 rewind
  $ amrestore -p /dev/nst0 \
    hostname.myowncompany.com \
    /backed/up/directory | tar -xvf - '*\[101\]*'
 
Or more specifically, the value you could pass to Gnu tar would be:
 
  'joe_asid\[101\].gz'

Latest revision as of 22:02, 6 April 2007