Trying to unzip a file, 'Filename not matched' when the directory exists

109,527

Solution 1

You can also get this when trying to specify the files to unzip and using a wildcard character. For example:

unzip -o somearchive.zip somedir/*

What may happen is that bash expands somedir/* to an actual existing dir and the files it contains. That list is then passed to unzip and it tries to find these files in the zip file.

To prevent this behavior just escape the * like this:

unzip -o somearchive.zip somedir/\*

Or, put the files to extract in double quotes:

unzip -o somearchive.zip "somedir/*"

Solution 2

You will also get that error if you try to unzip a whole directory of zips with a single command, like:

unzip *.zip

I found the solution on another site.  The * symbol must be escaped, so you should run this instead:

unzip \*.zip

instead.

Solution 3

The file name argument after the archive name specifies a file to extract. Use -d to specify the target directory:

Usage: unzip [-Z] [-opts[modifiers]] file[.zip] [list] [-x xlist] [-d exdir]
    ...
    -d  extract files into exdir

Moreover, -Z is used to querying the archive, not extracting.

Solution 4

This exact command worked for me:
unzip -o archive.zip -d /Users/current/Dev/tools/

Notice the combination of options -o & -d (destination/inflation path).

Solution 5

Trying to unzip a zipped file with a new name will raise the 'Filename not matches' exception. To workaround this move the zip file to the destination directory

mv the_file.zip somedir/

navigate to the destination directory

cd somedir/

from there run the unzip command without the destination filename argument

unzip the_file.zip

Everything will work well.

so in this case the commands should be

[root@Feddy Joomla]# mv Joomla_3.0.3-Stable-Full_Package.zip /opt/lampp/htdocs/joomla/
[root@Feddy Joomla]# cd /opt/lampp/htdocs/joomla/
[root@Feddy Joomla]/opt/lampp/htdocs/joomla# unzip Joomla_3.0.3-Stable-Full_Package.zip
Share:
109,527

Related videos on Youtube

Suhail Gupta
Author by

Suhail Gupta

Updated on September 18, 2022

Comments

  • Suhail Gupta
    Suhail Gupta over 1 year

    While trying to unzip a file named Joomla_3.0.3-Stable-Full_Package.zip to the directory named joomla I get filename not matched. Why is that?

    # unzip -Z Joomla_3.0.3-Stable-Full_Package.zip /opt/lampp/htdocs/joomla/  
    Archive:  Joomla_3.0.3-Stable-Full_Package.zip  
    caution: filename not matched:  /opt/lampp/htdocs/joomla/
    

    Here is the screen cast of the directory:

    joomla screen cast

    (The joomla directory is empty)

    • austin
      austin over 3 years
      i hit this error when i forgot to put a -d before my exdir argument
  • Suhail Gupta
    Suhail Gupta about 11 years
    didn't get you. Can you please write the command
  • choroba
    choroba about 11 years
    @SuhailGupta: unzip -d /opt/lampp/htdocs/joomla/ Joomla_3.0.3-Stable-Full_Package.zip, i.e. drop -Z, add -d.
  • Amalgovinus
    Amalgovinus over 7 years
    What's the -o flag?
  • sjbotha
    sjbotha over 7 years
    The -o option is to overwrite existing files without prompting.
  • Jaymon
    Jaymon over 5 years
    You might also get the 'Filename not matched' error when your -o flag is in the wrong place: unzip -o ARCHIVE_NAME.zip is good while unzip ARCHIVE_NAME.zip -o is bad
  • dfasdfg
    dfasdfg over 4 years
    oh.. looks like escape symbols arent allowed but im sure that everyone knows what those are.
  • Ernest Friedman-Hill
    Ernest Friedman-Hill over 4 years
    Downvoting because, although this answer makes true statements, they don’t address the issue the OP has, which is a misunderstanding about that arguments to unzip.
  • G-Man Says 'Reinstate Monica'
    G-Man Says 'Reinstate Monica' over 4 years
    This doesn’t make any sense to me, at least not if you’re talking about Unix / Linux.  (It might make sense if you’re talking about Windows, but this question is about Fedora Linux.)  And, to the extent that it does make sense (potentially), it appears to be a duplicate of sjbotha’s answer.  Can you explain what you mean more clearly?
  • dfasdfg
    dfasdfg over 4 years
    i was talking about the unzip command that i used on a linux system. i had a directory with many zip files and i tried to extract them all with unzip *.zip and got that error because the * was not escaped. you might also be right about this not belonging here since the op just tried to extract one zip file and i was trying to extract many with one command.
  • Manikandan Arunachalam
    Manikandan Arunachalam over 4 years
    worked for me too.
  • Christian
    Christian over 2 years
    This simplest answer is the best. And this is it. Thank you @dfasdfg
  • Admin
    Admin almost 2 years
    if I try to escape the * on my ubuntu system, it says it cannot find any zip files.