mv কমান্ড ডিরেক্টরি নামটি কমান্ড বিকল্পের সাথে গুলিয়ে দেয়


12

আমার একটি ডিরেক্টরি আছে --pycache--, যা আমার কাছে যেতে হবে __pycache__mvকমান্ডটি নিম্নলিখিত উপায়ে ব্যবহার করে আমাকে তালিকাভুক্ত আউটপুট দেয়। CLIআমি যা চাই তা করতে কীভাবে ব্যবহার করতে পারি?

$ mv --pycache-- __pycache__
/bin/mv: unrecognized option '--pycache--/'

উত্তর:


22

ফাইল নাম / ডিরেক্টরিগুলি কম প্রচলিত চিহ্নগুলির সাথে শুরু করে এটি একটি মানক সমস্যা। আপনার সমস্যাটি হ'ল এমভি দীর্ঘকালীন বিকল্প নাম হিসাবে --pycache-- এর চিকিত্সা করছে (যেহেতু এটি দিয়ে শুরু হয় -, এর সাথে সংক্ষিপ্ত বিকল্পও রয়েছে, তারা শুরু করে -)। দীর্ঘ এবং সংক্ষিপ্ত বিকল্পগুলির বিশদটির জন্য দয়া করে getopt এর জন্য ম্যানপেজ দেখুন ।

এই পরিস্থিতিতে স্ট্যান্ডার্ড কাজটি হ'ল একটি খালি ডাবল ড্যাশ ব্যবহার করা - সমস্ত যুক্তির আগে, যা কমান্ডটি বলে (আপনার ক্ষেত্রে এমভি, তবে অন্যদের সাথে কাজ করবে, উদাহরণস্বরূপ সিপি) বিকল্পগুলির অনুসরণ করে নিম্নলিখিত বিষয়গুলি চিকিত্সা বন্ধ করতে এবং এটিকে হিসাবে আচরণ করবে যুক্তি.

সুতরাং, আপনার আদেশটি হয়ে যাবে:

$ mv -- --pycache--/ __pycache__

এবং ব্যর্থ হবে না।


8
উত্তম উত্তর তবে আমার মনে হয় আপনি বোঝাতে চেয়েছিলেন - বিকল্প হিসাবে নিম্নলিখিত বিষয়গুলি অনুসরণ করা বন্ধ করে দিতে এবং কমান্ডকে অন্য কোনও উপায়ে নয় বরং আর্গুমেন্ট হিসাবে বিবেচনা করতে বলে।
রাউন্ডটাওয়ার

1
আমার মনে হয় এটা শুরুতে যোগ করার জন্য আরো পোর্টেবল ./: mv ./--pycache-- __pycache__
কেভিন

3
@ কেভিন এটি কেবল তখনই কাজ করে যখন আর্গুমেন্ট কোনও ফাইলের নাম।
স্টার ব্লু

16

আপনার প্রথম অক্ষরটি কমান্ডের -জন্য অস্পষ্ট mv(বা বরং এটির দ্ব্যর্থহীন অর্থ একটি বিকল্প নাম অনুসরণ করে)।

পরিবর্তে এটি চেষ্টা করুন:

mv ./--ppycache-- __pycache__

সূত্র: linux.about.com


2
বিকল্প সমাধানের জন্য +1 যা কমান্ড সমর্থন না করে তাও কাজ করে -
Sverre Rabbelier
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.