@_pathdec<EOL><INDENT>def getattr(self, tid, fh=None):<DEDENT>
if not self.__exists(tid):<EOL><INDENT>raise FuseOSError(errno.ENOENT)<EOL><DEDENT>pt = self.PathType.get(tid)<EOL>st = deepcopy(self.st)<EOL>st['<STR_LIT>'] = int(time())<EOL>st['<STR_LIT>'] = st['<STR_LIT>']<EOL>st['<STR_LIT>'] = st['<STR_LIT>']<EOL>if pt is self.PathType.file:<EOL><INDENT>st['<STR_LIT>'] = stat.S_IFREG | <NUM_LIT><EOL>st['<STR_LIT>'] = <NUM_LIT:1><EOL>st['<STR_LIT>'] = self.searches[ tid[<NUM_LIT:0>] ][ tid[<NUM_LIT:1>] ].filesize<EOL>st['<STR_LIT>'] = self.searches[ tid[<NUM_LIT:0>] ][ tid[<NUM_LIT:1>] ].ctime<EOL>st['<STR_LIT>'] = st['<STR_LIT>']<EOL>st['<STR_LIT>'] = self.searches[ tid[<NUM_LIT:0>] ][ tid[<NUM_LIT:1>] ].atime<EOL><DEDENT>elif pt is self.PathType.ctrl:<EOL><INDENT>st['<STR_LIT>'] = stat.S_IFREG | <NUM_LIT><EOL>st['<STR_LIT>'] = <NUM_LIT:1><EOL>st['<STR_LIT>'] = len(self.__sh_script)<EOL><DEDENT>elif pt is self.PathType.main:<EOL><INDENT>st['<STR_LIT>'] = stat.S_IFDIR | <NUM_LIT><EOL><DEDENT>st['<STR_LIT>'] = math.ceil(st['<STR_LIT>'] / st['<STR_LIT>'])<EOL>return st<EOL>
File attributes.

Parameters
----------
tid : str
    Path to file. Original `path` argument is converted to tuple identifier by ``_pathdec`` decorator.
fh : int
    File descriptor. Unnecessary, therefore ignored.

Returns
-------
st : dict
    Dictionary that contains file attributes. See: ``man 2 stat``.