डबल कोट्स के साथ आउटपुट कैसे करें


1

मैं mplayer के लिए एक URL पाइप करना चाहते हैं।
लेकिन दोहरे उद्धरण चिह्नों के साथ 1 आउटपुट का एनकैप्सुलेट करने का तरीका नहीं देख सकते (अन्यथा मेपल की गलतियाँ)

ये गलत है

youtube-dl.exe -g http://www.youtube.com/watch?v=sNPVt3cMkT0 | mplayer

से मिलता जुलता?
https://stackoverflow.com/questions/14952295/set-output-of-a-command-as-a-variable-with-pipes

एक अन्य विकल्प अस्थायी फ़ाइल से लिखना / पढ़ना है।


आपको क्या त्रुटि मिल रही है? उद्धरण प्रभावित नहीं करेंगे mplayer, वे प्रभावित करेंगे youtube-dl.exe। वास्तव में इसका आउटपुट क्या है youtube-dl.exe -g? क्या वह एक धारा है?
टेराडन

@ आप सही हैं, त्रुटि youtube-dl से आ रही है, ऐसा लगता है कि इसके तर्क के रूप में mplayer दिखता है।
योस्को

@terdon बहुत सारे मापदंडों के साथ youtube-dl -g $watch_URIएक बहुत, बहुत लंबा यूआरआई आउटपुट देता है । यह एक "प्रत्यक्ष" वीडियो लिंक जैसा दिखता है।
ब्लैकलाइट शाइनिंग

@yoshco सबसे पहले, आप YouTube URI के चारों ओर उद्धरण चाहते हैं ताकि बच सकें ?। दूसरे, mplayerवास्तव में इस stdinतरह से वीडियो के लिंक लेता है?
ब्लैकलाइट शाइनिंग

youtube-dl सरल यूआरएल के लिए उद्धरण चिह्नों के साथ या उसके बिना काम करता है यह स्थिति को नहीं बदलता है।
योस्को

जवाबों:


1

आप परिणाम को mplayer में पाइप नहीं करना चाहते हैं, इसके बजाय आप परिणाम को तर्क के रूप में आपूर्ति करना चाहते हैं, जैसे:

for /f "delims=" %A in ('youtube-dl.exe -g "http://www.youtube.com/watch?v=sNPVt3cMkT0"') do @mplayer "%%A"

यदि एक बैच फ़ाइल के भीतर उपयोग किया जाता है, तो सभी प्रतिशत को दोगुना कर देता है, इसलिए %Aबन जाता है %%A


यह काम किया। बस यूट्यूब लिंक के चारों ओर दोहरे उद्धरण जोड़ना था। धन्यवाद
योशको

@ योशको - मैंने उत्तर के लिए उद्धरण जोड़े, धन्यवाद :)
dbenham

0

मैं एक mplayerमैनुअल पृष्ठ के लिए googled ; मैं जो बता सकता हूं, वह तर्कों के रूप में यूआरआई लेता है। जैसा कि मैंने टिप्पणियों में उल्लेख किया है, आपको YouTube URI को उद्धृत करने की आवश्यकता है। आपको कमांड प्रतिस्थापन को उद्धृत करने की भी आवश्यकता होगी, इसलिए शेल उस फ़ाइल नाम में भी विस्तार करने की कोशिश नहीं करता है। आप कुछ इस तरह चाहते हैं:

mplayer "$(youtube-dl --get-url 'https://www.youtube.com/watch?v=sNPVt3cMkT0')"

( --get-urlइसके बराबर है -g; मैंने इसे उन लोगों के लिए स्पष्टता के लिए बदल दिया है जो परिचित नहीं हैं youtube-dl।)


1
आपका जवाब यूनिक्स सिस्टम को संदर्भित करता है। विंडोज़ पर im
yoshco

सिंगल कोट्स, डबल कोट्स और $()-स्टाइल कमांड सबस्टेशन POSIX में निर्दिष्ट हैं और किसी भी शेल में समान काम करना चाहिए।
ब्लैकलाइट शाइनिंग

im gettign erro msg के बाद url $ (youtube-dl --get-url ' youtube.com/watch?v=sNPVt3cMkT0' ) को संभालने के लिए कोई स्ट्रीम नहीं मिली
yoshco

आपका खोल POSIX- अनुरूप नहीं होना चाहिए। * श्रग * आप हमेशा स्थापित bashकर सकते हैं या कुछ और।
ब्लैकलाइट शाइनिंग
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.