আমি কীভাবে Zsh এ ইউআরএল আর্গুমেন্টগুলির জন্য গ্লোব্বিং অক্ষম করতে পারি? [প্রতিলিপি]


2

আমি সবেমাত্র একটি ইউটিউব ভিডিও ডাউনলোড করতে চেয়েছিলাম youtube-dl, তবে, zshপ্রশ্নবোধটি ?(যা ইউআরএলের কোয়েরি অংশটি পৃথক করে) গ্লোব্বিং ওয়াইল্ডকার্ড অপারেটর (যা কোনও একক চরিত্রের সাথে মেলে) হিসাবে ব্যাখ্যা করে এবং সুতরাং এটি নিম্নলিখিত ত্রুটি বার্তার সাহায্যে আদেশটি বাতিল করে দেয়:

$ youtube-dl https://www.youtube.com/watch?v=eDSESarTQXk
zsh: no matches found: https://www.youtube.com/watch?v=eDSESarTQXk

zshসম্ভবত নিয়মিত এক্সপ্রেশন ব্যবহার করে ইউআরএলগুলি সনাক্ত করার কোনও উপায় আছে যাতে এটি গ্লোব করার চেষ্টা না করে?


1
এফডাব্লুআইডাব্লু, এই সমস্যাটি জেডএস বা ম্যাসেজের কৌশলগুলি সম্পর্কিত কোনও নির্দিষ্ট ভিডিও সম্পর্কিত কিছুই নয়। এখানে মূল সমস্যাটি উদ্ধৃতিতে URL টি রেখে সমাধান করা হবে। বাশ, ক্ষ, শ এবং অন্যান্যগুলিতে একই সমস্যা বিদ্যমান।
জ্যাকগল্ড

@ জ্যাকগল্ড: আমি যখন ব্যবহার করেছি তখন তা করার কথা মনে নেই oh-my-zshতবে যাইহোক, আমি নির্দিষ্ট সেটিংটি খুঁজে পাচ্ছি না এবং আশা করছিলাম যে এটি তাদের মাথার উপরের দিক থেকে জানা আছে। সম্ভবত তারা কেবল ?গ্লোবিং ওয়াইল্ডকার্ড অপারেটরকে অক্ষম করেছে ?
লেনার হোয়েট

"সম্ভবত তারা কেবল ?গ্লোব্বিং ওয়াইল্ডকার্ড অপারেটরকে অক্ষম করেছে ?" এটি যখন স্ল্যাশহ্যামার ব্যবহার করার সময় হালকা ধাক্কায় কাজ করবে তখন। এক-ক্ষেত্রে ব্যবহারের জন্য এর মতো মূল আচরণটি কখনই পরিবর্তন করবেন না।
জ্যাকগল্ড

উত্তর:


5

আপনি NOMATCH" zsh এর বিকল্পটি অক্ষম করতে পারেন :

setopt NO_NOMATCH

যদিও NOMATCHঅপশনটি নির্বাচন করা হল (যা ডিফল্ট) zsh কপি করে প্রিন্ট একটি ত্রুটির বার্তা যদি একটি প্যাটার্ন একটি ফাইল সাথে মিলছে না। অক্ষম করার মাধ্যমে NOMATCH, ফাইলের নামের সাথে মেলে না এমন নিদর্শনগুলি আর্গুমেন্ট তালিকায় অপরিবর্তিত রাখা হয়েছে।

নোট করুন যে বিকল্পটির নামটি সত্যই NOMATCHতাই আপনাকে NO_NOMATCHএটি অক্ষম করতে ব্যবহার করতে হবে, সেটিংটি কার্যকর MATCHহয় না।

মনোযোগ দিন : এটি কেবল URL গুলি নয়, সমস্ত গ্লোববিংকে প্রভাবিত করে affects সুতরাং নিদর্শনগুলি মেলে না, আপনি যদি zsh ফেরত ত্রুটিগুলির কোনও উপায়ে নির্ভর করেন তবে এটি যাওয়ার উপায় নয়। (দুঃখের বিষয়, এর সাথে পৃথক NULL_GLOBকোনও গ্লোব বাছাইকারী নেই যা NOMATCHপ্রতি ক্ষেত্রে সক্রিয় / অক্ষম করার অনুমতি দেয় ))


2
এর পরিণতি ব্যাখ্যা করার জন্য +1 NOMATCH, যদিও আমি মনে করি আপনার উত্তরটি সদৃশ প্রশ্নের পোস্ট করা উচিত ছিল। এবং একটি মন্তব্য: আপনি কম্যান্ডের NOMATCHসাহায্যে কমপক্ষে আচরণটি সাময়িকভাবে অক্ষম করতে পারেন noglob, যেমনnoglob youtube-dl url?foo=bar
এমপি

ইউআরএলগুলি স্বয়ংক্রিয়ভাবে উদ্ধৃত করার একটি আরও ভাল সমাধান হ'ল: superuser.com/a/1237124/93988
লেনার হোয়েট

1

আপনি উদ্ধৃতিগুলিতে ইউআরএল রাখতে পারেন এবং এটি কার্যকর হয়।

$ youtube-dl 'https://www.youtube.com/watch?v=eDSESarTQXk'
[youtube] eDSESarTQXk: Downloading webpage
[youtube] eDSESarTQXk: Downloading video info webpage
[youtube] eDSESarTQXk: Extracting video information
...

কেউ সহজেই আটকানো ইউআরএলগুলি স্বয়ংক্রিয়ভাবে উদ্ধৃত করতে পারে: superuser.com/a/1237124/93988
লেনার হোয়েট
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.