मैं स्वचालित रूप से flac फ़ाइलों को एक फ़ोल्डर में एमपी 3 में स्थानांतरित करने की कोशिश कर रहा हूं।
कोड की मेरी वर्तमान रेखा यह है:
inotifywait -m -r -q -e moved_to --format "'%w%f'" ~/test | xargs -I x flac -cd x - | lame -b 320 - /media/1tb/x.mp3
यह बताने के लिए कि यह अब तक कैसे काम करता है, inotifywait मॉनिटर ले जाता है ~ / पुनरावर्ती रूप से फ़ाइलों को वहां ले जाने के लिए, पथ और फ़ाइल नाम को एक पाइप पर आउटपुट करता है। xargs उस नाम को लेता है और उचित flac कमांड बनाता है, x को फाइलनाम के साथ बदलकर फाइल को दूसरे पाइप में डिकोड करता है। नए पाइप में लंगड़ा एमपी 3 के तहत / मीडिया में flac के आउटपुट को संसाधित करता है। मैं चाहता हूं कि xargs या तो किसी तरह से पाइप के पार पहुंच जाए, x को लंगड़ी कमांड में बदल दे या किसी तरह से इसे वैरिएबल में भेज दे, दोनों कमांड एक्सेस या कुछ और कर सकते हैं। मैंने नामित पाइपों और उस जैज के साथ खिलवाड़ करने की कोशिश की, लेकिन यह तथ्य कि दो कमांडों के बीच पाइप किए जाने के वास्तविक आंकड़े मेरे सिर के ऊपर हैं।
while read …
एक समाधान है, लेकिन फिर, ड्रॉपxargs
। आपने जो लिखा है उसका कोई मतलब नहीं है: आपको क्या लगताxargs
है कि इसका इनपुट मिल रहा है? और आपको चीजों को ठीक से उद्धृत करना चाहिए, संगीत फ़ाइल नामों के लिए रिक्त स्थान होना आम है।