GRAYBYTE WORDPRESS FILE MANAGER1831

Server IP : 198.54.121.189 / Your IP : 216.73.216.140
System : Linux premium69.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
PHP Version : 7.4.33
Disable Function : NONE
cURL : ON | WGET : ON | Sudo : OFF | Pkexec : OFF
Directory : /opt/alt/python39/lib64/python3.9/
Upload Files :
Current_dir [ Not Writeable ] Document_root [ Writeable ]

Command :


Current File : /opt/alt/python39/lib64/python3.9//glob.py
"""Filename globbing utility."""

import contextlib
import os
import re
import fnmatch
import sys

__all__ = ["glob", "iglob", "escape"]

def glob(pathname, *, recursive=False):
    """Return a list of paths matching a pathname pattern.

    The pattern may contain simple shell-style wildcards a la
    fnmatch. However, unlike fnmatch, filenames starting with a
    dot are special cases that are not matched by '*' and '?'
    patterns.

    If recursive is true, the pattern '**' will match any files and
    zero or more directories and subdirectories.
    """
    return list(iglob(pathname, recursive=recursive))

def iglob(pathname, *, recursive=False):
    """Return an iterator which yields the paths matching a pathname pattern.

    The pattern may contain simple shell-style wildcards a la
    fnmatch. However, unlike fnmatch, filenames starting with a
    dot are special cases that are not matched by '*' and '?'
    patterns.

    If recursive is true, the pattern '**' will match any files and
    zero or more directories and subdirectories.
    """
    sys.audit("glob.glob", pathname, recursive)
    it = _iglob(pathname, recursive, False)
    if recursive and _isrecursive(pathname):
        s = next(it)  # skip empty string
        assert not s
    return it

def _iglob(pathname, recursive, dironly):
    dirname, basename = os.path.split(pathname)
    if not has_magic(pathname):
        assert not dironly
        if basename:
            if os.path.lexists(pathname):
                yield pathname
        else:
            # Patterns ending with a slash should match only directories
            if os.path.isdir(dirname):
                yield pathname
        return
    if not dirname:
        if recursive and _isrecursive(basename):
            yield from _glob2(dirname, basename, dironly)
        else:
            yield from _glob1(dirname, basename, dironly)
        return
    # `os.path.split()` returns the argument itself as a dirname if it is a
    # drive or UNC path.  Prevent an infinite recursion if a drive or UNC path
    # contains magic characters (i.e. r'\\?\C:').
    if dirname != pathname and has_magic(dirname):
        dirs = _iglob(dirname, recursive, True)
    else:
        dirs = [dirname]
    if has_magic(basename):
        if recursive and _isrecursive(basename):
            glob_in_dir = _glob2
        else:
            glob_in_dir = _glob1
    else:
        glob_in_dir = _glob0
    for dirname in dirs:
        for name in glob_in_dir(dirname, basename, dironly):
            yield os.path.join(dirname, name)

# These 2 helper functions non-recursively glob inside a literal directory.
# They return a list of basenames.  _glob1 accepts a pattern while _glob0
# takes a literal basename (so it only has to check for its existence).

def _glob1(dirname, pattern, dironly):
    names = _listdir(dirname, dironly)
    if not _ishidden(pattern):
        names = (x for x in names if not _ishidden(x))
    return fnmatch.filter(names, pattern)

def _glob0(dirname, basename, dironly):
    if not basename:
        # `os.path.split()` returns an empty basename for paths ending with a
        # directory separator.  'q*x/' should match only directories.
        if os.path.isdir(dirname):
            return [basename]
    else:
        if os.path.lexists(os.path.join(dirname, basename)):
            return [basename]
    return []

# Following functions are not public but can be used by third-party code.

def glob0(dirname, pattern):
    return _glob0(dirname, pattern, False)

def glob1(dirname, pattern):
    return _glob1(dirname, pattern, False)

# This helper function recursively yields relative pathnames inside a literal
# directory.

def _glob2(dirname, pattern, dironly):
    assert _isrecursive(pattern)
    yield pattern[:0]
    yield from _rlistdir(dirname, dironly)

# If dironly is false, yields all file names inside a directory.
# If dironly is true, yields only directory names.
def _iterdir(dirname, dironly):
    if not dirname:
        if isinstance(dirname, bytes):
            dirname = bytes(os.curdir, 'ASCII')
        else:
            dirname = os.curdir
    try:
        with os.scandir(dirname) as it:
            for entry in it:
                try:
                    if not dironly or entry.is_dir():
                        yield entry.name
                except OSError:
                    pass
    except OSError:
        return

def _listdir(dirname, dironly):
    with contextlib.closing(_iterdir(dirname, dironly)) as it:
        return list(it)

# Recursively yields relative pathnames inside a literal directory.
def _rlistdir(dirname, dironly):
    names = _listdir(dirname, dironly)
    for x in names:
        if not _ishidden(x):
            yield x
            path = os.path.join(dirname, x) if dirname else x
            for y in _rlistdir(path, dironly):
                yield os.path.join(x, y)


magic_check = re.compile('([*?[])')
magic_check_bytes = re.compile(b'([*?[])')

def has_magic(s):
    if isinstance(s, bytes):
        match = magic_check_bytes.search(s)
    else:
        match = magic_check.search(s)
    return match is not None

def _ishidden(path):
    return path[0] in ('.', b'.'[0])

def _isrecursive(pattern):
    if isinstance(pattern, bytes):
        return pattern == b'**'
    else:
        return pattern == '**'

def escape(pathname):
    """Escape all special characters.
    """
    # Escaping is done by wrapping any of "*?[" between square brackets.
    # Metacharacters do not work in the drive part and shouldn't be escaped.
    drive, pathname = os.path.splitdrive(pathname)
    if isinstance(pathname, bytes):
        pathname = magic_check_bytes.sub(br'[\1]', pathname)
    else:
        pathname = magic_check.sub(r'[\1]', pathname)
    return drive + pathname

[ Back ]
Name
Size
Last Modified
Owner / Group
Permissions
Options
..
--
May 13 2025 08:38:50
root / root
0755
__pycache__
--
May 13 2025 08:36:19
root / linksafe
0755
asyncio
--
May 13 2025 08:36:19
root / linksafe
0755
collections
--
May 13 2025 08:36:19
root / linksafe
0755
concurrent
--
May 13 2025 08:36:19
root / linksafe
0755
config-3.9-x86_64-linux-gnu
--
May 13 2025 08:38:50
root / linksafe
0755
ctypes
--
May 13 2025 08:36:19
root / linksafe
0755
curses
--
May 13 2025 08:36:19
root / linksafe
0755
dbm
--
May 13 2025 08:36:19
root / linksafe
0755
distutils
--
May 13 2025 08:36:19
root / linksafe
0755
email
--
May 13 2025 08:36:19
root / linksafe
0755
encodings
--
May 13 2025 08:36:19
root / linksafe
0755
ensurepip
--
May 13 2025 08:36:19
root / linksafe
0755
html
--
May 13 2025 08:36:19
root / linksafe
0755
http
--
May 13 2025 08:36:19
root / linksafe
0755
importlib
--
May 13 2025 08:36:19
root / linksafe
0755
json
--
May 13 2025 08:36:19
root / linksafe
0755
lib-dynload
--
May 13 2025 08:36:19
root / linksafe
0755
lib2to3
--
May 13 2025 08:40:34
root / linksafe
0755
logging
--
May 13 2025 08:36:19
root / linksafe
0755
multiprocessing
--
May 13 2025 08:36:19
root / linksafe
0755
pydoc_data
--
May 13 2025 08:36:19
root / linksafe
0755
site-packages
--
May 13 2025 08:36:19
root / linksafe
0755
sqlite3
--
May 13 2025 08:36:19
root / linksafe
0755
unittest
--
May 13 2025 08:36:19
root / linksafe
0755
urllib
--
May 13 2025 08:36:19
root / linksafe
0755
venv
--
May 13 2025 08:36:19
root / linksafe
0755
wsgiref
--
May 13 2025 08:36:19
root / linksafe
0755
xml
--
May 13 2025 08:36:19
root / linksafe
0755
xmlrpc
--
May 13 2025 08:36:19
root / linksafe
0755
zoneinfo
--
May 13 2025 08:36:19
root / linksafe
0755
LICENSE.txt
13.61 KB
April 08 2025 15:21:55
root / linksafe
0644
__future__.py
5.026 KB
April 08 2025 15:21:55
root / linksafe
0644
__phello__.foo.py
0.063 KB
April 08 2025 15:21:55
root / linksafe
0644
_aix_support.py
3.31 KB
April 08 2025 15:21:55
root / linksafe
0644
_bootlocale.py
1.759 KB
April 08 2025 15:21:55
root / linksafe
0644
_bootsubprocess.py
2.612 KB
April 08 2025 15:21:55
root / linksafe
0644
_collections_abc.py
28.686 KB
April 08 2025 15:21:55
root / linksafe
0644
_compat_pickle.py
8.544 KB
April 08 2025 15:21:55
root / linksafe
0644
_compression.py
5.215 KB
April 08 2025 15:21:55
root / linksafe
0644
_markupbase.py
14.28 KB
April 08 2025 15:21:55
root / linksafe
0644
_osx_support.py
21.263 KB
April 08 2025 15:21:55
root / linksafe
0644
_py_abc.py
6.044 KB
April 08 2025 15:21:55
root / linksafe
0644
_pydecimal.py
223.307 KB
April 08 2025 15:21:55
root / linksafe
0644
_pyio.py
91.129 KB
April 08 2025 15:21:55
root / linksafe
0644
_sitebuiltins.py
3.042 KB
April 08 2025 15:21:55
root / linksafe
0644
_strptime.py
24.685 KB
April 08 2025 15:21:55
root / linksafe
0644
_sysconfigdata__linux_x86_64-linux-gnu.py
39.586 KB
April 22 2025 12:51:21
root / linksafe
0644
_sysconfigdata_d_linux_x86_64-linux-gnu.py
39.328 KB
April 22 2025 12:42:25
root / linksafe
0644
_threading_local.py
7.051 KB
April 08 2025 15:21:55
root / linksafe
0644
_weakrefset.py
5.784 KB
April 08 2025 15:21:55
root / linksafe
0644
abc.py
4.805 KB
April 08 2025 15:21:55
root / linksafe
0644
aifc.py
31.841 KB
April 08 2025 15:21:55
root / linksafe
0644
antigravity.py
0.488 KB
April 08 2025 15:21:55
root / linksafe
0644
argparse.py
95.819 KB
April 08 2025 15:21:55
root / linksafe
0644
ast.py
54.938 KB
April 08 2025 15:21:55
root / linksafe
0644
asynchat.py
11.056 KB
April 08 2025 15:21:55
root / linksafe
0644
asyncore.py
19.631 KB
April 08 2025 15:21:55
root / linksafe
0644
base64.py
19.406 KB
April 08 2025 15:21:55
root / linksafe
0755
bdb.py
30.653 KB
April 08 2025 15:21:55
root / linksafe
0644
binhex.py
14.438 KB
April 08 2025 15:21:55
root / linksafe
0644
bisect.py
2.295 KB
April 08 2025 15:21:55
root / linksafe
0644
bz2.py
12.155 KB
April 08 2025 15:21:55
root / linksafe
0644
cProfile.py
6.209 KB
April 08 2025 15:21:55
root / linksafe
0755
calendar.py
24.25 KB
April 08 2025 15:21:55
root / linksafe
0644
cgi.py
33.149 KB
April 08 2025 15:21:55
root / linksafe
0755
cgitb.py
11.813 KB
April 08 2025 15:21:55
root / linksafe
0644
chunk.py
5.308 KB
April 08 2025 15:21:55
root / linksafe
0644
cmd.py
14.512 KB
April 08 2025 15:21:55
root / linksafe
0644
code.py
10.373 KB
April 08 2025 15:21:55
root / linksafe
0644
codecs.py
35.813 KB
April 08 2025 15:21:55
root / linksafe
0644
codeop.py
6.178 KB
April 08 2025 15:21:55
root / linksafe
0644
colorsys.py
3.969 KB
April 08 2025 15:21:55
root / linksafe
0644
compileall.py
19.634 KB
April 08 2025 15:21:55
root / linksafe
0644
configparser.py
53.305 KB
April 08 2025 15:21:55
root / linksafe
0644
contextlib.py
24.047 KB
April 08 2025 15:21:55
root / linksafe
0644
contextvars.py
0.126 KB
April 08 2025 15:21:55
root / linksafe
0644
copy.py
8.447 KB
April 08 2025 15:21:55
root / linksafe
0644
copyreg.py
7.104 KB
April 08 2025 15:21:55
root / linksafe
0644
crypt.py
3.729 KB
April 08 2025 15:21:55
root / linksafe
0644
csv.py
15.766 KB
April 08 2025 15:21:55
root / linksafe
0644
dataclasses.py
48.424 KB
April 08 2025 15:21:55
root / linksafe
0644
datetime.py
87.087 KB
April 08 2025 15:21:55
root / linksafe
0644
decimal.py
0.313 KB
April 08 2025 15:21:55
root / linksafe
0644
difflib.py
81.354 KB
April 08 2025 15:21:55
root / linksafe
0644
dis.py
20.088 KB
April 08 2025 15:21:55
root / linksafe
0644
doctest.py
102.117 KB
April 08 2025 15:21:55
root / linksafe
0644
enum.py
38.516 KB
April 08 2025 15:21:55
root / linksafe
0644
filecmp.py
9.789 KB
April 08 2025 15:21:55
root / linksafe
0644
fileinput.py
14.444 KB
April 08 2025 15:21:55
root / linksafe
0644
fnmatch.py
5.863 KB
April 08 2025 15:21:55
root / linksafe
0644
formatter.py
14.788 KB
April 08 2025 15:21:55
root / linksafe
0644
fractions.py
23.753 KB
April 08 2025 15:21:55
root / linksafe
0644
ftplib.py
34.664 KB
April 08 2025 15:21:55
root / linksafe
0644
functools.py
37.97 KB
April 08 2025 15:21:55
root / linksafe
0644
genericpath.py
4.858 KB
April 08 2025 15:21:55
root / linksafe
0644
getopt.py
7.313 KB
April 08 2025 15:21:55
root / linksafe
0644
getpass.py
5.85 KB
April 08 2025 15:21:55
root / linksafe
0644
gettext.py
26.627 KB
April 08 2025 15:21:55
root / linksafe
0644
glob.py
5.687 KB
April 08 2025 15:21:55
root / linksafe
0644
graphlib.py
9.349 KB
April 08 2025 15:21:55
root / linksafe
0644
gzip.py
21.262 KB
April 08 2025 15:21:55
root / linksafe
0644
hashlib.py
9.775 KB
April 08 2025 15:21:55
root / linksafe
0644
heapq.py
22.341 KB
April 08 2025 15:21:55
root / linksafe
0644
hmac.py
6.839 KB
April 08 2025 15:21:55
root / linksafe
0644
imaplib.py
53.961 KB
April 08 2025 15:21:55
root / linksafe
0644
imghdr.py
3.719 KB
April 08 2025 15:21:55
root / linksafe
0644
imp.py
10.289 KB
April 08 2025 15:21:55
root / linksafe
0644
inspect.py
115.464 KB
April 08 2025 15:21:55
root / linksafe
0644
io.py
3.458 KB
April 08 2025 15:21:55
root / linksafe
0644
ipaddress.py
76.791 KB
April 08 2025 15:21:55
root / linksafe
0644
keyword.py
1.022 KB
April 08 2025 15:21:55
root / linksafe
0644
linecache.py
5.333 KB
April 08 2025 15:21:55
root / linksafe
0644
locale.py
76.437 KB
April 08 2025 15:21:55
root / linksafe
0644
lzma.py
12.921 KB
April 08 2025 15:21:55
root / linksafe
0644
mailbox.py
76.947 KB
April 08 2025 15:21:55
root / linksafe
0644
mailcap.py
8.902 KB
April 08 2025 15:21:55
root / linksafe
0644
mimetypes.py
21.059 KB
April 08 2025 15:21:55
root / linksafe
0644
modulefinder.py
23.829 KB
April 08 2025 15:21:55
root / linksafe
0644
netrc.py
5.436 KB
April 08 2025 15:21:55
root / linksafe
0644
nntplib.py
40.062 KB
April 08 2025 15:21:55
root / linksafe
0644
ntpath.py
27.084 KB
April 08 2025 15:21:55
root / linksafe
0644
nturl2path.py
2.819 KB
April 08 2025 15:21:55
root / linksafe
0644
numbers.py
10.096 KB
April 08 2025 15:21:55
root / linksafe
0644
opcode.py
5.527 KB
April 08 2025 15:21:55
root / linksafe
0644
operator.py
10.499 KB
April 08 2025 15:21:55
root / linksafe
0644
optparse.py
58.954 KB
April 08 2025 15:21:55
root / linksafe
0644
os.py
38.149 KB
April 08 2025 15:21:55
root / linksafe
0644
pathlib.py
52.806 KB
April 08 2025 15:21:55
root / linksafe
0644
pdb.py
61.768 KB
April 08 2025 15:21:55
root / linksafe
0755
pickle.py
63.398 KB
April 08 2025 15:21:55
root / linksafe
0644
pickletools.py
91.295 KB
April 08 2025 15:21:55
root / linksafe
0644
pipes.py
8.707 KB
April 08 2025 15:21:55
root / linksafe
0644
pkgutil.py
23.707 KB
April 08 2025 15:21:55
root / linksafe
0644
platform.py
39.662 KB
April 08 2025 15:21:55
root / linksafe
0755
plistlib.py
27.586 KB
April 08 2025 15:21:55
root / linksafe
0644
poplib.py
14.842 KB
April 08 2025 15:21:55
root / linksafe
0644
posixpath.py
15.353 KB
April 08 2025 15:21:55
root / linksafe
0644
pprint.py
21.999 KB
April 08 2025 15:21:55
root / linksafe
0644
profile.py
22.357 KB
April 08 2025 15:21:55
root / linksafe
0755
pstats.py
28.639 KB
April 08 2025 15:21:55
root / linksafe
0644
pty.py
4.694 KB
April 08 2025 15:21:55
root / linksafe
0644
py_compile.py
8.011 KB
April 22 2025 12:40:29
root / linksafe
0644
pyclbr.py
14.897 KB
April 08 2025 15:21:55
root / linksafe
0644
pydoc.py
107.043 KB
April 08 2025 15:21:55
root / linksafe
0755
queue.py
11.227 KB
April 08 2025 15:21:55
root / linksafe
0644
quopri.py
7.108 KB
April 08 2025 15:21:55
root / linksafe
0755
random.py
30.746 KB
April 08 2025 15:21:55
root / linksafe
0644
re.py
15.489 KB
April 08 2025 15:21:55
root / linksafe
0644
reprlib.py
5.144 KB
April 08 2025 15:21:55
root / linksafe
0644
rlcompleter.py
7.469 KB
April 08 2025 15:21:55
root / linksafe
0644
runpy.py
12.777 KB
April 08 2025 15:21:55
root / linksafe
0644
sched.py
6.291 KB
April 08 2025 15:21:55
root / linksafe
0644
secrets.py
1.988 KB
April 08 2025 15:21:55
root / linksafe
0644
selectors.py
19.078 KB
April 08 2025 15:21:55
root / linksafe
0644
shelve.py
8.327 KB
April 08 2025 15:21:55
root / linksafe
0644
shlex.py
13.185 KB
April 08 2025 15:21:55
root / linksafe
0644
shutil.py
51.787 KB
April 08 2025 15:21:55
root / linksafe
0644
signal.py
2.381 KB
April 08 2025 15:21:55
root / linksafe
0644
site.py
21.332 KB
April 08 2025 15:21:55
root / linksafe
0644
smtpd.py
34.018 KB
April 08 2025 15:21:55
root / linksafe
0755
smtplib.py
44.354 KB
April 08 2025 15:21:55
root / linksafe
0755
sndhdr.py
6.933 KB
April 08 2025 15:21:55
root / linksafe
0644
socket.py
36.05 KB
April 08 2025 15:21:55
root / linksafe
0644
socketserver.py
26.656 KB
April 08 2025 15:21:55
root / linksafe
0644
sre_compile.py
27.317 KB
April 08 2025 15:21:55
root / linksafe
0644
sre_constants.py
7.009 KB
April 08 2025 15:21:55
root / linksafe
0644
sre_parse.py
39.823 KB
April 08 2025 15:21:55
root / linksafe
0644
ssl.py
51.299 KB
April 08 2025 15:21:55
root / linksafe
0644
stat.py
5.356 KB
April 08 2025 15:21:55
root / linksafe
0644
statistics.py
37.175 KB
April 08 2025 15:21:55
root / linksafe
0644
string.py
10.318 KB
April 08 2025 15:21:55
root / linksafe
0644
stringprep.py
12.614 KB
April 08 2025 15:21:55
root / linksafe
0644
struct.py
0.251 KB
April 08 2025 15:21:55
root / linksafe
0644
subprocess.py
81.605 KB
April 08 2025 15:21:55
root / linksafe
0644
sunau.py
17.732 KB
April 08 2025 15:21:55
root / linksafe
0644
symbol.py
2.228 KB
April 22 2025 12:43:10
root / linksafe
0644
symtable.py
7.72 KB
April 08 2025 15:21:55
root / linksafe
0644
sysconfig.py
24.33 KB
April 08 2025 15:21:55
root / linksafe
0644
tabnanny.py
11.151 KB
April 08 2025 15:21:55
root / linksafe
0755
tarfile.py
104.388 KB
April 08 2025 15:21:55
root / linksafe
0755
telnetlib.py
22.709 KB
April 08 2025 15:21:55
root / linksafe
0644
tempfile.py
27.308 KB
April 08 2025 15:21:55
root / linksafe
0644
textwrap.py
18.952 KB
April 08 2025 15:21:55
root / linksafe
0644
this.py
0.979 KB
April 08 2025 15:21:55
root / linksafe
0644
threading.py
52.906 KB
April 08 2025 15:21:55
root / linksafe
0644
timeit.py
13.177 KB
April 08 2025 15:21:55
root / linksafe
0755
token.py
2.313 KB
April 08 2025 15:21:55
root / linksafe
0644
tokenize.py
25.276 KB
April 08 2025 15:21:55
root / linksafe
0644
trace.py
28.535 KB
April 08 2025 15:21:55
root / linksafe
0755
traceback.py
24.082 KB
April 08 2025 15:21:55
root / linksafe
0644
tracemalloc.py
17.624 KB
April 08 2025 15:21:55
root / linksafe
0644
tty.py
0.858 KB
April 08 2025 15:21:55
root / linksafe
0644
types.py
9.556 KB
April 08 2025 15:21:55
root / linksafe
0644
typing.py
75.238 KB
April 08 2025 15:21:55
root / linksafe
0644
uu.py
7.106 KB
April 22 2025 12:52:00
root / linksafe
0644
uuid.py
26.684 KB
April 08 2025 15:21:55
root / linksafe
0644
warnings.py
19.227 KB
April 08 2025 15:21:55
root / linksafe
0644
wave.py
17.582 KB
April 08 2025 15:21:55
root / linksafe
0644
weakref.py
21.055 KB
April 08 2025 15:21:55
root / linksafe
0644
webbrowser.py
23.531 KB
April 08 2025 15:21:55
root / linksafe
0755
xdrlib.py
5.774 KB
April 08 2025 15:21:55
root / linksafe
0644
zipapp.py
7.358 KB
April 08 2025 15:21:55
root / linksafe
0644
zipfile.py
86.172 KB
April 08 2025 15:21:55
root / linksafe
0644
zipimport.py
30.044 KB
April 08 2025 15:21:55
root / linksafe
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025
CONTACT ME
Static GIF