Al intentar realizar una operación como superusuario, hago esto: os.system('sudo '+comando) pero lógicamente me pide la entrada de contraseña, por consola... estoy totalmente perdido en este asunto que no se ni como explicarlo, pero se que tiene solución.
El sigte. código, elimina el directorio previamente seleccionado mediante un DirDialog.
Lo que necesito es, ingresar la contraseña desde un TextEntryDialog e incluirla junto al comando o algo parecido en siendo que todo funcione correctamente.
Código Python:
Ver original
#!/usr/bin/env python # -*- coding: utf-8 -*- import wx import os class MyFrame(wx.Frame): def __init__(self): wx.Frame.__init__(self, None, -1, "Ventana") self.button_1 = wx.Button(self, -1, "Abrir") self.__Prop() self.__Layout() self.Bind(wx.EVT_BUTTON, self.Abrir, self.button_1) def __Prop(self): self.SetTitle("Temas by Wilmer") def __Layout(self): sizer1 = wx.BoxSizer(wx.VERTICAL) sizer1.Add(self.button_1, 0, wx.ALL, 10) self.SetSizer(sizer1) def Abrir(self, event): dialogo = wx.DirDialog(self) a = dialogo.ShowModal() if a == wx.ID_OK: ruta = dialogo.GetPath() os.system('sudo rm -r '+ruta) #EL PROBLEMA ES ESTE print("carpeta eliminada") event.Skip() if __name__ == '__main__': app = wx.PySimpleApp(0) wx.InitAllImageHandlers() frame = MyFrame() app.SetTopWindow(frame) frame.Show() app.MainLoop()
Que me pidan cambiar el titulo a esta entrada, no estaría nada mal