अगर उत्पादन पहले से मौजूद है तो ffmpeg को छोड़ दें


20

मैं पायथन में वीडियो फ़ाइल को परिवर्तित करने के लिए एक बैच स्क्रिप्ट चला रहा हूं, लेकिन ऐसा हो सकता है कि आउटपुट फ़ाइल पहले से मौजूद है, इसलिए ffmpeg से बचने का एक विकल्प है जो मुझसे पूछ रहा है कि क्या आउटपुट पहले से मौजूद है? मैं चाहता हूं कि यह स्वचालित रूप से प्रक्रिया को छोड़ दे।

जवाबों:


29

से ffmpegप्रलेखन :

-n (वैश्विक)
आउटपुट फ़ाइलों को अधिलेखित न करें, और यदि एक निर्दिष्ट आउटपुट फ़ाइल पहले से मौजूद है, तो तुरंत बाहर निकलें।

उपयोग:

$ ffmpeg -n -i input output.mp4
  …
  File 'output.mp4' already exists. Exiting.
  • -nएक वैश्विक विकल्प है। वैश्विक विकल्पों को पहले निर्दिष्ट किया जाना चाहिए।
  • विपरीत विकल्प वह है -yजो बिना पूछे ही आउटपुट को स्वचालित रूप से अधिलेखित कर देगा।

3

आदर्श रूप से आपकी स्क्रिप्ट को इनपुट (आउटपुट) के अस्तित्व की जांच करनी चाहिए, इससे पहले कि आप उसे (संभावित) खतरनाक ऑपरेशन करने के लिए फोन करें। खतरनाक से मेरा मतलब है मौजूदा फ़ाइलों को अधिलेखित करना ...

एक बार जब आपको पता चल जाता है कि क्या आउटपुट पहले से ही मौजूद है तो आपकी स्क्रिप्ट प्रोसेसिंग के लिए अगली फाइल पर जा सकती है।


कुछ इस तरह की stackoverflow.com/a/638980/1265980 मदद कर सकता है।
एरेली

1
यदि आप अजगर का उपयोग कर रहे हैं, तो आप यह देख सकते हैं कि क्या फ़ाइल pathlib का उपयोग कर मौजूद है - stackoverflow.com/a/82852/1265980
Ereli
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.