:py:mod:`dissect.target.filesystems.exfat` ========================================== .. py:module:: dissect.target.filesystems.exfat Module Contents --------------- Classes ~~~~~~~ .. autoapisummary:: dissect.target.filesystems.exfat.ExfatFilesystem dissect.target.filesystems.exfat.ExfatDirEntry dissect.target.filesystems.exfat.ExfatFilesystemEntry Attributes ~~~~~~~~~~ .. autoapisummary:: dissect.target.filesystems.exfat.ExfatFileTree .. py:data:: ExfatFileTree .. py:class:: ExfatFilesystem(fh: BinaryIO, *args, **kwargs) Bases: :py:obj:`dissect.target.filesystem.Filesystem` Base class for filesystems. .. py:attribute:: __type__ :value: 'exfat' A short string identifying the type of filesystem. .. py:attribute:: exfat .. py:attribute:: cluster_size .. py:method:: get(path: str) -> ExfatFilesystemEntry Retrieve a :class:`FilesystemEntry` from the filesystem. :param path: The path which we want to retrieve. :returns: A :class:`FilesystemEntry` for the path. .. py:class:: ExfatDirEntry(fs: Filesystem, path: str, name: str, entry: Any) Bases: :py:obj:`dissect.target.filesystem.DirEntry` Directory entry base class. Closely models ``os.DirEntry``. Filesystem implementations are encouraged to subclass this class to provide efficient implementations of the various methods. :param fs: The filesystem the entry belongs to. :param path: The path of the parent directory. :param name: The name of the entry. :param entry: The raw entry backing this directory entry. .. py:attribute:: fs :type: ExfatFilesystem The filesystem the entry belongs to. .. py:attribute:: entry :type: ExfatFileTree The raw entry backing this directory entry. .. py:method:: get() -> ExfatFilesystemEntry Retrieve the :class:`FilesystemEntry` this directory entry points to. Subclasses should override this method to provide an efficient implementation. .. py:method:: stat(*, follow_symlinks: bool = True) -> dissect.target.helpers.fsutil.stat_result .. py:class:: ExfatFilesystemEntry(fs: ExfatFilesystem, path: str, entry: ExfatFileTree) Bases: :py:obj:`dissect.target.filesystem.FilesystemEntry` Base class for filesystem entries. .. py:attribute:: size .. py:attribute:: cluster .. py:method:: get(path: str) -> ExfatFilesystemEntry Get a filesystem entry relative from the current one. .. py:method:: open() -> BinaryIO Open this filesystem entry. :returns: A file-like object. Resolves symlinks when possible .. py:method:: scandir() -> collections.abc.Iterator[ExfatDirEntry] Iterate over the contents of a directory, yields :class:`FilesystemEntry`. :returns: An iterator of :class:`FilesystemEntry`. .. py:method:: is_symlink() -> bool Return whether this entry is a link. .. py:method:: is_dir(follow_symlinks: bool = True) -> bool Return whether this entry is a directory. .. py:method:: is_file(follow_symlinks: bool = True) -> bool Return whether this entry is a file. .. py:method:: stat(follow_symlinks: bool = True) -> dissect.target.helpers.fsutil.stat_result Determine the stat information of this entry. If the entry is a symlink and ``follow_symlinks`` is ``True``, it gets resolved, attempting to stat the path where it points to. :param follow_symlinks: Whether to resolve the symbolic link if this entry is a symbolic link. :returns: The stat information of this entry. .. py:method:: lstat() -> dissect.target.helpers.fsutil.stat_result Return the stat information of this entry.