##// END OF EJS Templates
***
ralonso -
r24:25
parent child
Show More
@@ -1,283 +1,289
1 1 # -*- coding: utf-8 -*- No newline at end of file
2 2 No newline at end of file
3 3 """ No newline at end of file
4 4 Module implementing MainWindow. No newline at end of file
5 5 """ No newline at end of file
6 6 No newline at end of file
7 7 from PyQt4.QtGui import QMainWindow No newline at end of file
8 8 from PyQt4.QtCore import pyqtSignature No newline at end of file
9 9 from Ui_MainWindow import Ui_MainWindow No newline at end of file
10 10 from PyQt4 import QtGui No newline at end of file
11 11 from subprocess import * No newline at end of file
12 12 import sys No newline at end of file
13 13 import os No newline at end of file
14 14 #import subprocess No newline at end of file
15 15 import commands No newline at end of file
16 16 No newline at end of file
17 17 class MainWindow(QMainWindow, Ui_MainWindow): No newline at end of file
18 18 """ No newline at end of file
19 19 Class documentation goes here. No newline at end of file
20 20 """ No newline at end of file
21 21 def __init__(self, parent = None): No newline at end of file
22 22 QMainWindow.__init__(self, parent) No newline at end of file
23 23 self.setupUi(self) No newline at end of file
24 24 self.setupUi2() No newline at end of file
25 25 No newline at end of file
26 26 def setupUi2(self): No newline at end of file
27 27 print 'hi' No newline at end of file
28 28 self.txtDpath.setText('/home/ricardoar/optional/STORAGE/EW_DRIFTS') No newline at end of file
29 29 self.txtRpath.setText('/home/ricardoar/optional/STORAGE/prueba1_jro_backup_manager') No newline at end of file
30 30 No newline at end of file
31 31 @pyqtSignature("") No newline at end of file
32 32 def on_btnDpath_clicked(self): No newline at end of file
33 33 """ No newline at end of file
34 34 Slot documentation goes here. No newline at end of file
35 35 """ No newline at end of file
36 36 var_Dpath= QtGui.QFileDialog.getExistingDirectory(self, 'Open Directory', './', QtGui.QFileDialog.ShowDirsOnly) No newline at end of file
37 37 self.txtDpath.setText(var_Dpath) No newline at end of file
38 38 self.on_txtDpath_editingFinished() No newline at end of file
39 39 No newline at end of file
40 40 @pyqtSignature("") No newline at end of file
41 41 def on_btnRpath_clicked(self): No newline at end of file
42 42 """ No newline at end of file
43 43 Slot documentation goes here. No newline at end of file
44 44 """ No newline at end of file
45 45 var_Rpath = QtGui.QFileDialog.getExistingDirectory(self, 'Open Directory', './', QtGui.QFileDialog.ShowDirsOnly) No newline at end of file
46 46 self.txtRpath.setText(var_Rpath) No newline at end of file
47 47 self.on_txtRpath_editingFinished() No newline at end of file
48 48 No newline at end of file
49 49 No newline at end of file
50 50 @pyqtSignature("") No newline at end of file
51 51 def on_txtDpath_editingFinished(self): No newline at end of file
52 52 No newline at end of file
53 53 #Usando el modulo "subprocess" eric4 pide seleccion del tipo de subproceso (padre o hijo) No newline at end of file
54 54 #por ello se prefiere usar el modulo "commands" No newline at end of file
55 55 #p1= Popen(['find', var_Dpath, '-name', '*.r'], stdout=PIPE) No newline at end of file
56 56 #p2= Popen(['awk', '-F/', '{print substr($NF,2,7)}'], stdin=p1.stdout, stdout=PIPE) No newline at end of file
57 57 #output_p2= p2.communicate()[0] No newline at end of file
58 58 #self.txtInfo.setText(output_p2) No newline at end of file
59 59 No newline at end of file
60 60 var_Dpath=self.txtDpath.text() No newline at end of file
61 61 No newline at end of file
62 62 #Se verifica que la ruta exista y sea un directorio No newline at end of file
63 63 var_cmd="test -d "+str(var_Dpath) No newline at end of file
64 64 var_output=commands.getstatusoutput(var_cmd)[0] No newline at end of file
65 65 if var_output != 0: No newline at end of file
66 66 self.txtInfo.setText("Ruta no valida, output_error:" + str(var_output)) No newline at end of file
67 67 return No newline at end of file
68 68 No newline at end of file
69 69 #Se buscan los archivos del tipo especificado No newline at end of file
70 70 var_Dtype=self.txtDtype.text() No newline at end of file
71 71 var_cmd="find " + str(var_Dpath) + " -name *."+ str(var_Dtype) +" | awk -F/ '{print substr($NF,2,7)}' | sort| uniq" No newline at end of file
72 72 output_p2=commands.getstatusoutput(var_cmd)[1] No newline at end of file
73 73 No newline at end of file
74 74 #INFO: Muestra los dias que se encontraron No newline at end of file
75 75 self.txtInfo.setText(output_p2) No newline at end of file
76 76 No newline at end of file
77 77 #Se cargan las listas para seleccionar StartDay y StopDay No newline at end of file
78 78 self.var_list=[] No newline at end of file
79 79 for i in range(0, (len(output_p2)+1)/8): No newline at end of file
80 80 self.var_list.append(output_p2[8*i:8*(i+1)-1]) No newline at end of file
81 81 No newline at end of file
82 82 self.lstStartDay.clear() No newline at end of file
83 83 self.lstStopDay.clear() No newline at end of file
84 84 No newline at end of file
85 85 for i in self.var_list: No newline at end of file
86 86 self.lstStartDay.addItem(i) No newline at end of file
87 87 self.lstStopDay.addItem(i) No newline at end of file
88 88 No newline at end of file
89 89 self.lstStopDay.setCurrentIndex(self.lstStartDay.count()-1) No newline at end of file
90 90 No newline at end of file
91 91 #INFO: Muestra cuantos dias se encontraron No newline at end of file
92 92 # self.txtInfo.setText(str(self.lstStartDay.count())) No newline at end of file
93 93 No newline at end of file
94 94 No newline at end of file
95 95 @pyqtSignature("") No newline at end of file
96 96 def on_txtRpath_editingFinished(self): No newline at end of file
97 97 """ No newline at end of file
98 98 Slot documentation goes here. No newline at end of file
99 99 """ No newline at end of file
100 100 var_Rpath=self.txtRpath.text() No newline at end of file
101 101 #Se verifica que la ruta exista y sea un directorio No newline at end of file
102 102 var_cmd="test -d "+str(var_Rpath) No newline at end of file
103 103 var_output=commands.getstatusoutput(var_cmd)[0] No newline at end of file
104 104 if var_output != 0: No newline at end of file
105 105 self.txtInfo.setText("Ruta no valida, output_error:" + str(var_output)) No newline at end of file
106 106 return No newline at end of file
107 107 else: No newline at end of file
108 108 self.txtInfo.setText("Ruta valida, sin error") No newline at end of file
109 109 No newline at end of file
110 110 No newline at end of file
111 111 @pyqtSignature("int") No newline at end of file
112 112 def on_lstDtype_activated(self, index): No newline at end of file
113 113 """ No newline at end of file
114 114 Permite elegir entre los tipos de archivos No newline at end of file
115 115 """ No newline at end of file
116 116 if index == 0: No newline at end of file
117 117 var_type='r' No newline at end of file
118 118 elif index == 1: No newline at end of file
119 119 var_type='pdata' No newline at end of file
120 120 elif index == 2: No newline at end of file
121 121 var_type='sswma' No newline at end of file
122 122 No newline at end of file
123 123 if index != 3: No newline at end of file
124 124 self.txtDtype.setText(var_type) No newline at end of file
125 125 self.txtDtype.setReadOnly(True) No newline at end of file
126 126 self.on_txtDpath_editingFinished() No newline at end of file
127 127 else: No newline at end of file
128 128 self.txtDtype.setText('') No newline at end of file
129 129 self.txtDtype.setReadOnly(False) No newline at end of file
130 130 No newline at end of file
131 131 @pyqtSignature("") No newline at end of file
132 132 def on_txtDtype_editingFinished(self): No newline at end of file
133 133 """ No newline at end of file
134 134 Se activa cuando el tipo de archivo es ingresado manualmente No newline at end of file
135 135 """ No newline at end of file
136 136 self.on_txtDpath_editingFinished() No newline at end of file
137 137 No newline at end of file
138 138 @pyqtSignature("int") No newline at end of file
139 139 def on_lstStartDay_activated(self, index): No newline at end of file
140 140 """ No newline at end of file
141 141 Slot documentation goes here. No newline at end of file
142 142 """ No newline at end of file
143 143 #self.txtInfo.setText(str(index)) No newline at end of file
144 144 var_StopDay_index=self.lstStopDay.count() - self.lstStopDay.currentIndex() No newline at end of file
145 145 No newline at end of file
146 146 self.lstStopDay.clear() No newline at end of file
147 147 No newline at end of file
148 148 for i in self.var_list[index:]: No newline at end of file
149 149 self.lstStopDay.addItem(i) No newline at end of file
150 150 No newline at end of file
151 151 self.lstStopDay.setCurrentIndex(self.lstStopDay.count() - var_StopDay_index) No newline at end of file
152 152 #self.txtInfo.append(str(var_StopDay_index)) No newline at end of file
153 153 #self.txtInfo.append(str(self.lstStopDay.count())) No newline at end of file
154 154 No newline at end of file
155 155 No newline at end of file
156 156 @pyqtSignature("int") No newline at end of file
157 157 def on_lstStopDay_activated(self, index): No newline at end of file
158 158 """ No newline at end of file
159 159 Slot documentation goes here. No newline at end of file
160 160 """ No newline at end of file
161 161 #self.txtInfo.setText(str(index)) No newline at end of file
162 162 var_StartDay_index=self.lstStartDay.currentIndex() No newline at end of file
163 163 No newline at end of file
164 164 var_end_index = self.lstStopDay.count() - index No newline at end of file
165 165 No newline at end of file
166 166 self.lstStartDay.clear() No newline at end of file
167 167 No newline at end of file
168 168 for i in self.var_list[:len(self.var_list) - var_end_index + 1]: No newline at end of file
169 169 self.lstStartDay.addItem(i) No newline at end of file
170 170 No newline at end of file
171 171 self.lstStartDay.setCurrentIndex(var_StartDay_index) No newline at end of file
172 172 #self.txtInfo.append(str(var_StartDay_index)) No newline at end of file
173 173 #self.txtInfo.append(str(self.lstStartDay.count())) No newline at end of file
174 174 No newline at end of file
175 175 @pyqtSignature("int") No newline at end of file
176 176 def on_lstDcapacity_activated(self, index): No newline at end of file
177 177 """ No newline at end of file
178 178 Permite elegir el tamaño del disco No newline at end of file
179 179 """ No newline at end of file
180 180 if index == 0: No newline at end of file
181 181 var_size=25.0 No newline at end of file
182 182 elif index == 1: No newline at end of file
183 183 var_size=8.5 No newline at end of file
184 184 elif index == 2: No newline at end of file
185 185 var_size=4.7 No newline at end of file
186 186 elif index == 3: No newline at end of file
187 187 var_size=0.7 No newline at end of file
188 188 No newline at end of file
189 189 if index != 4: No newline at end of file
190 190 self.txtDcapacity.setText(str(var_size*10**9/1024**2)) No newline at end of file
191 191 self.txtDcapacity.setReadOnly(True) No newline at end of file
192 192 else: No newline at end of file
193 193 self.txtDcapacity.setText('') No newline at end of file
194 194 self.txtDcapacity.setReadOnly(False) No newline at end of file
195 195 No newline at end of file
196 196 @pyqtSignature("") No newline at end of file
197 197 def on_btnGbkp_clicked(self): No newline at end of file
198 198 """ No newline at end of file
199 199 Cuando se presiona el boton Generate Bkp No newline at end of file
200 200 """ No newline at end of file
201 201 No newline at end of file
202 202 #CREA LAS CARPETAS "COMENTADO TEMPORALMENTE" No newline at end of file
203 203 var_dirs='/{gpath,iso,ppath}' No newline at end of file
204 204 var_Rpath=self.txtRpath.text() No newline at end of file
205 205 var_cmd="mkdir "+str(var_Rpath)+str(var_dirs) No newline at end of file
206 206 self.txtInfo.append(var_cmd) No newline at end of file
207 207 #var_output=commands.getstatusoutput(var_cmd)[0] No newline at end of file
208 208 #if var_output != 0: No newline at end of file
209 209 # self.txtInfo.setText("No se pudieron crear los directorios, output_error:" + str(var_output)) No newline at end of file
210 210 # return No newline at end of file
211 211 #else: No newline at end of file
212 212 # self.txtInfo.append('Carpetas creadas correctamente') No newline at end of file
213 213 No newline at end of file
214 214 No newline at end of file
215 215 var_sublist=[] No newline at end of file
216 216 for i in self.var_list[self.lstStartDay.currentIndex():self.lstStartDay.currentIndex() + self.lstStopDay.currentIndex()+1]: No newline at end of file
217 217 self.txtInfo.append(i) No newline at end of file
218 218 var_sublist.append(i) No newline at end of file
219 219 No newline at end of file
220 220 #Cargando los parametros de busqueda No newline at end of file
221 221 var_Dpath=self.txtDpath.text() No newline at end of file
222 222 var_Dtype=self.txtDtype.text() No newline at end of file
223 223 No newline at end of file
224 224 var_files_list=[] No newline at end of file
225 225 for var_doy in var_sublist: No newline at end of file
226 226 var_cmd="find " + str(var_Dpath) + " -name ?"+var_doy+"???."+ str(var_Dtype) No newline at end of file
227 227 var_output=commands.getstatusoutput(var_cmd)[1] No newline at end of file
228 228 for var_file in var_output.split(): No newline at end of file
229 229 var_files_list.append(var_file) No newline at end of file
230 230 No newline at end of file
231 231 var_Dcapacity=float(self.txtDcapacity.text())*1024 #tamaño en KB No newline at end of file
232 232 self.txtInfo.append(str(var_Dcapacity)) No newline at end of file
233 233 No newline at end of file
234 234 # self.txtInfo.append('Lista de archivos') No newline at end of file
235 235 # var_n=0 No newline at end of file
236 236 # for i in var_files_list: No newline at end of file
237 237 #self.txtInfo.append(str(os.path.getsize(i)/1024)+'KB') No newline at end of file
238 238 #self.txtInfo.append(i) No newline at end of file
239 239 #var_n += 1 No newline at end of file
240 240 #self.txtInfo.append(str(var_n)) No newline at end of file
241 241 No newline at end of file
242 242 #lista de archivos a grabar en archivos . No newline at end of file
243 243 No newline at end of file
244 244 #Ruta de los archivos a grabar No newline at end of file
245 245 var_Rpath_ppath=var_Rpath=self.txtRpath.text()+"/ppath" No newline at end of file
246 var_Dpath=self.txtDpath.text() No newline at end of file
246 247 No newline at end of file
247 248 var_n=0 No newline at end of file
248 249 var_n_files=0 No newline at end of file
249 250 var_tmp=0 No newline at end of file
250 251 var_files_list_2=[] No newline at end of file
251 252 self.txtInfo.append(str(len(var_files_list))) No newline at end of file
252 253 No newline at end of file
253 254 for i in var_files_list: No newline at end of file
254 255 var_size_i=os.path.getsize(i)/1024+1 #tamaño en KB, se suma 1 KB para evitar problemas al momento de sumar No newline at end of file
255 256 var_tmp += var_size_i No newline at end of file
256 257 No newline at end of file
257 258 if var_tmp > var_Dcapacity: No newline at end of file
258 259 var_tmp -= var_size_i #se quita el tamaño sumado para mostrar el tamaño real No newline at end of file
260 #muestra info No newline at end of file
259 261 self.txtInfo.append(str(len(var_files_list_2))+" size:"+str(var_tmp)) No newline at end of file
260 262 No newline at end of file
261 263 #se crea un archivo con numeral en el sufijo, y se añaden la lista de archivos No newline at end of file
262 264 var_file = open(var_Rpath_ppath+"/"+self.txtElabel.text()+"_"+str(var_n)+".dat","w") No newline at end of file
263 265 for line in var_files_list_2: No newline at end of file
266 var_file.write(line.split(var_Dpath)[1]+'=') No newline at end of file
264 267 var_file.write(line+'\n') No newline at end of file
265 268 var_file.close() No newline at end of file
266 269 No newline at end of file
267 270 var_n_files += len(var_files_list_2) No newline at end of file
268 271 var_tmp = var_size_i No newline at end of file
269 272 var_files_list_2=[] No newline at end of file
270 273 var_files_list_2.append(i) No newline at end of file
271 274 var_n += 1 No newline at end of file
272 275 No newline at end of file
273 276 else: No newline at end of file
274 277 var_files_list_2.append(i) No newline at end of file
275 278 No newline at end of file
279 #muestra info No newline at end of file
276 280 self.txtInfo.append(str(len(var_files_list_2))+" size:"+str(var_tmp)) No newline at end of file
277 281 var_file = open(var_Rpath_ppath+"/"+self.txtElabel.text()+"_"+str(var_n)+".dat","w") No newline at end of file
278 282 for line in var_files_list_2: No newline at end of file
283 for line in var_files_list_2: No newline at end of file
279 284 var_file.write(line+'\n') No newline at end of file
280 285 var_file.close() No newline at end of file
281 286 No newline at end of file
282 287 var_n_files += len(var_files_list_2) No newline at end of file
283 288 self.txtInfo.append(str(var_n_files)) No newline at end of file
General Comments 0
You need to be logged in to leave comments. Login now