diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py
index <HASH>..<HASH> 100755
--- a/codespell_lib/_codespell.py
+++ b/codespell_lib/_codespell.py
@@ -631,9 +631,11 @@ def main(*args):
                     del dirs[:]
                     continue
                 for file_ in files:
-                    if glob_match.match(file_):
+                    if glob_match.match(file_):  # skip files
                         continue
                     fname = os.path.join(root, file_)
+                    if glob_match.match(fname):  # skip paths
+                        continue
                     if not os.path.isfile(fname) or not os.path.getsize(fname):
                         continue
                     bad_count += parse_file(fname, colors, summary)
diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py
index <HASH>..<HASH> 100644
--- a/codespell_lib/tests/test_basic.py
+++ b/codespell_lib/tests/test_basic.py
@@ -276,6 +276,7 @@ def test_ignore():
         assert cs.main('--skip=bad*', d) == 0
         assert cs.main('--skip=*ignoredir*', d) == 1
         assert cs.main('--skip=ignoredir', d) == 1
+        assert cs.main('--skip=*ignoredir/bad*', d) == 1
 
 
 def test_check_filename():
Extend --skip to match globs across full paths. Closes #<I> (#<I>)

* Add a test for skipping globs with directory and filename in



* Forcing a Travis build



* Tidy the Travis force



* Skip paths with the glob mathing too