docs: def file_exists(self,
  	                filename,
  	                directory=False,
  	                note=None,
  	                loglevel=logging.DEBUG):
  		"""Return True if file exists on the target host, else False
  
  		@param filename:   Filename to determine the existence of.
  		@param directory:  Indicate that the file is a directory.
  		@param note:       See send()
  
  		@type filename:    string
  		@type directory:   boolean
  
  		@rtype: boolean
  		"""
  		shutit = self.shutit
  		shutit.handle_note(note, 'Looking for filename in current environment: ' + filename)
  		test_type = '-d' if directory is True else '-e' if directory is None else '-a'
  		#       v the space is intentional, to avoid polluting bash history.
  		test = ' test %s %s' % (test_type, filename)
  		output = self.send_and_get_output(test + ' && echo FILEXIST-""FILFIN || echo FILNEXIST-""FILFIN',
  		                                  record_command=False,
  		                                  echo=False,
  		                                  loglevel=loglevel)
  		res = shutit.match_string(output, '^(FILEXIST|FILNEXIST)-FILFIN$')
  		ret = False
  		if res == 'FILEXIST':
  			ret = True
  		elif res == 'FILNEXIST':
  			pass
  		else: # pragma: no cover
  			# Change to log?
  			shutit.log(repr('before>>>>:%s<<<< after:>>>>%s<<<<' % (self.pexpect_child.before, self.pexpect_child.after)),transient=True, level=logging.INFO)
  			shutit.fail('Did not see FIL(N)?EXIST in output:\n' + output)
  		shutit.handle_note_after(note=note)
  		return ret