def rm(self, name):
b_OK        = False<EOL>str_here    = self.cwd()<EOL>l_path = name.split('<STR_LIT:/>')<EOL>if len(l_path) > <NUM_LIT:1>:<EOL><INDENT>self.cd('<STR_LIT:/>'.join(l_path[<NUM_LIT:0>:-<NUM_LIT:1>]))<EOL><DEDENT>name = l_path[-<NUM_LIT:1>]<EOL>if name in self.snode_current.d_data:<EOL><INDENT>del self.snode_current.d_data[name]<EOL>b_OK    = True<EOL><DEDENT>if name in self.snode_current.d_nodes:<EOL><INDENT>del self.snode_current.d_nodes[name]<EOL>b_OK    = True<EOL><DEDENT>self.cd(str_here)<EOL>return b_OK<EOL>
Remove a data analog called 'name'.

The 'name' can contain a path specifier.

Warning: see

    http://stackoverflow.com/questions/5844672/delete-an-element-from-a-dictionary

deleting from the snode_current changes dictionary contents for any other
agents that have references to the same instance.

This deletes either directories or files.