code: def Shell(device, *command):
      
      if command:
          return device.StreamingShell(' '.join(command))
      else:
          # Retrieve the initial terminal prompt to use as a delimiter for future reads
          terminal_prompt = device.InteractiveShell()
          print(terminal_prompt.decode('utf-8'))
  
          # Accept user input in a loop and write that into the interactive shells stdin, then print output
          while True:
              cmd = input('> ')
              if not cmd:
                  continue
              elif cmd == 'exit':
                  break
              else:
                  stdout = device.InteractiveShell(cmd, strip_cmd=True, delim=terminal_prompt, strip_delim=True)
                  if stdout:
                      if isinstance(stdout, bytes):
                          stdout = stdout.decode('utf-8')
                          print(stdout)
  
          device.Close()
docs: Runs a command on the device and prints the stdout.
  
      Args:
        command: Command to run on the target.