oracle - Batch script that delete old Backups and keep just one -


मैं एक स्क्रिप्ट शुरू करते हैं - command = statistics --statdata = SAVEPOINTS & gt; C: \ safepoints.txt जो इस तरह एक आउटपुट उत्पन्न करता है।

  प्रत्येक बचे हुए संस्करण के लिए पृष्ठ संख्या: 0: संस्करण = 0, स्थिति = 3, ts = 2014-03 -18 16: 24: 51.764, पृष्ठ संख्या = 68861 1: संस्करण = 1, स्थिति = 3, ts = 2014-03-18 17: 49: 25.622, पृष्ठ संख्या = 68861 2: संस्करण = 2, स्थिति = 3, ts = 2014-03-19 05: 00: 10.467, पृष्ठ संख्या = 68 925 3: संस्करण = 3, स्थिति = 2, ts = 2014-03-20 14: 05: 53.267, पृष्ठ संख्या = 2744 4: संस्करण = 4, स्थिति = 3, ts = 2014-03-20 15: 08: 40.607, पृष्ठ संख्या = 6885 9 5: संस्करण = 5, स्थिति = 3, ts = 2014-03-21 05: 00: 10.527, पृष्ठ संख्या = 68926   

मेरी आइडिया है, सी: \ सेफपॉइंटटैक्स को पढ़ने के लिए और अगर नवीनतम फाइल को रखने की तुलना में स्थिति = 3 (पूर्ण बैकअप) के साथ मौजूदा फाइल में मौजूद है तो जांचें, और इस तरह एक नया कमांड शुरू करें

  - command = DELETE_SAVEPOINTS 0-4   

मैंने इस प्रकार की स्क्रिप्ट को संशोधित किया है लेकिन यह

लूप के बाद & gt; % Mytempfile%

  @echo सेट पर अंतिम = 1 सेट mytempfile =% TEMP% \% यादृच्छिक% .आउट% ORACLE% \ bin \ OracleDatabase.bat --dbtype = ओरेकल --डेटाबेस = orca --होस्टनाम = test.ora.db --पोर्ट = 5645 - यूज़र = सा --पासवर्ड = ***** --command = सांख्यिकी --statdata = SAVEPOINTS & gt; % Mytempfile% for / f "tokens = 1 delims =:" %% एक ('% mytempfile% ^ | खोज' स्थिति = 3 '') के लिए सेट / एक अंतिम =%% a for / f "tokens = 1 Delims =: "%% a '('% mytempfile% ^ | खोज 'स्थिति = 3' '') (यदि% अंतिम% नेक %% ए (% Oracle% \ bin \ OracleDatabase.bat --dbtype = ORACLE - -डेटाबेस = orca --होस्टनाम = test.ora.db --पोर्ट = 5645 - यूज़र = सा --पासवर्ड = ***** --command = DELETE_SAVEPOINTS %% ए)) डेल / क्यू% माईटेमफ़ाइल%    

मुझे यह सुनिश्चित करने की ज़रूरत नहीं है कि सहेजने के लिए हटाने के लिए कब पूछें, लेकिन ..

  @echo ऑफ सेट "अंतिम = 1" के लिए / f "tokens = 1 delims =:" %% ('findstr / l / c: "status = 3" सुरक्षित बिंदु Txt ') सेट / एक "आखिरी = %% ए -1" अगर% last% geq 0 (रनवैटएवर --command = DELETE_SAVEPOINTS 0-% last%)   

यह इसके लिए खोज करता है स्थिति = 3 के साथ अंतिम पंक्ति और आरंभिक संख्या प्राप्त करता है अगर यह 0 से बड़ा या बराबर है, तो एक पंक्ति मिलती है और स्क्रिप्ट को 0 से कुछ को अंतिम पूर्ण बैकअप से पहले सहेजे जाने वाले बिंदु से निकालने के लिए कहा जाता है

Comments

Popular posts from this blog

Java - Error: no suitable method found for add(int, java.lang.String) -

java - JPA TypedQuery: Parameter value element did not match expected type -

c++ - static template member variable has internal linkage but is not defined -