रिक्त स्थान के साथ पथ में निर्दिष्ट फ़ाइलों को हटाने के लिए विंडोज 7 बैच फ़ाइल


0

मैं काम करने के लिए एक बैच प्राप्त करने की कोशिश कर रहा हूं, लेकिन ऐसा लगता है कि यह निर्दिष्ट फ़ाइल नहीं पा सकता है। मैं बैच को निम्नलिखित करना चाहूंगा:

  1. मेरे आईपी कैमरा सॉफ्टवेयर को मार डालो
  2. सॉफ़्टवेयर के बंद होने को सुनिश्चित करने के लिए कुछ सेकंड प्रतीक्षा करें
  3. एक फ़ाइल को छोड़कर संग्रह (वीडियो) फ़ाइलों को हटाएं ( Sources.SRCS.lxa)
  4. फिर से, यह सुनिश्चित करने के लिए प्रतीक्षा करें कि सभी फाइलें हटा दी गई हैं
  5. IP कैमरा सॉफ़्टवेयर को पुनरारंभ करें
  6. बैच विंडो बंद करें

मुझे लगता है कि मैं करीब हूं, लेकिन मैं इसे सही तरीके से काम करने के लिए "प्रो आंखों" के एक सेट की सराहना करूंगा। यह वह जगह है जहां मैं अब तक (जो मैंने थोड़ा हल्का पढ़ने के बाद एक साथ "पैच" किया है लेकिन इस बिंदु पर मैं काफी फंस गया हूं):

@echo off
taskkill /f /im DVRClient.exe
timeout 10
for %%i in (N:\TRENDnet\"TRENDnetVIEW Pro"\"Archive Files"\*) do if not %%~nxi == Sources.SRCS.lxa del %%i
timeout 20
C:\Program Files (x86)\TRENDnet\TRENDnetVIEW Pro\DVRClient.exe
exit

किसी भी सहायता की सराहना की जाएगी!

धन्यवाद, एड


यदि कोई अन्य फ़ाइल नहीं है (उस स्रोतों को छोड़कर। srcs.xla फ़ाइल) जिसे आपको संरक्षित करने की आवश्यकता है, तो आप फ़ाइल को कहीं और ले जा सकते हैं, rd / s / q कमांड द्वारा "आर्काइव फ़ाइलों" फ़ोल्डर को स्वयं हटा दें, इसे फिर से बनाएँ और इसे फिर से जगह पर वापस लाएं। या, यदि आपके द्वारा हटाई जाने वाली सभी फ़ाइलों का समान एक्सटेंशन है, तो आप फ़ाइल को एक्सटेंशन को पहले और "डेल * .ext" की सुरक्षा के लिए नाम बदल सकते हैं और इसे फिर से नाम दे सकते हैं। अट्रिब + आर का प्रयोग इसी तरह के टोटके कर सकते हैं। मैं जो कह रहा हूं, वह है, कम से कम, आपको इस मामले के लिए कमांड का उपयोग करने की आवश्यकता नहीं है।
स्कॉट री

धन्यवाद स्कॉट, मुझे लगता है कि मुझे लगता है कि मैं बैच लेखन में बेहतर था जितना कि मैं वास्तव में हूँ ..;) मैंने फैसला किया कि फॉर सीएमडी सिरदर्द के लायक नहीं था और बस नाम बदलने की आज्ञा का इस्तेमाल किया जैसा कि आपने सुझाव दिया था कि फाइलें सभी समान हैं। प्रकार। चीयर्स।
ईदो

जवाबों:


0

उद्धरण के साथ सिद्धांत यह है कि पूरे पथ (आंशिक निर्देशिका नहीं) को उद्धृत किया जाना चाहिए।
इसलिए परिवर्तित करें

N:\TRENDnet\"TRENDnetVIEW Pro"\"Archive Files"\*

में

"N:\TRENDnet\TRENDnetVIEW Pro\Archive Files\*"

और रूपांतरित भी

C:\Program Files (x86)\TRENDnet\TRENDnetVIEW Pro\DVRClient.exe

में

"C:\Program Files (x86)\TRENDnet\TRENDnetVIEW Pro\DVRClient.exe"

अंत में, आप %%iउद्धरण द्वारा चर की सभी घटनाओं के आसपास विचार कर सकते हैं : "%%i"इसलिए यदि अंतरिक्ष में फ़ाइल नाम था %%i, तो आपका प्रसंस्करण विफल नहीं होगा।


टिप miroxlav के लिए धन्यवाद, यह एक बहुत लंबा समय रहा है क्योंकि मुझे इन कमोड्स का उपयोग करना पड़ा है, और दुख की बात है (समय के कारण) इससे पहले कि मैं उन्हें फिर से उपयोग करने से पहले यह बहुत लंबा समय हो जाए ... चीयर्स।
ईदो
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.