এম্পারস্যান্ড সহ একটি উপ-ডিরেক্টরি নামটি কীভাবে আমি পালাব?


9

একটি কর্নশেল চালাচ্ছে এবং একটি ডিরেক্টরি ট্রিকে অতিক্রম করার চেষ্টা করছে। নিম্নলিখিত অনুসারে একটি উপ ডিরেক্টরিতে সিডি করতে চান:

 -3ab_&_-3dc.img

আমার প্রশ্নটি হল এই নামে আমার কীভাবে এম্পারস্যান্ডটি এড়াতে হবে? আমি সাফল্য ছাড়াই ডাবল-কোট এবং ব্যাকস্ল্যাশগুলির বিভিন্ন সমন্বয় চেষ্টা করেছি tried

উত্তর:


11

জন্য &(অথবা প্রায় অন্য কোন চরিত্র, আপনি দুই সহজ সম্ভাবনার আছে।

  • পুরো জিনিসটির চারপাশে একক উদ্ধৃতি রাখুন: ' -3ab_&_-3dc.img'
  • প্রতিটি কষ্টকর চরিত্রের আগে একটি ব্যাকস্ল্যাশ রাখুন: -3ab_\&_-3dc.img

দুটি ব্যতিক্রম আছে:

  • একক উদ্ধৃতি পদ্ধতি একক উদ্ধৃতিতে কাজ করে না। ব্যাকস্ল্যাশ একক উদ্ধৃতিগুলির মধ্যে বিশেষ নয়, সুতরাং আপনি এটি সরাসরি ব্যবহার করতে পারবেন না। আপনি যা করতে পারেন তা হ'ল একক-উদ্ধৃত স্ট্রিংটি অবিলম্বে ব্যাকস্ল্যাশ প্লাস একক উদ্ধৃতি ব্যবহার করুন এবং একক উদ্ধৃতি পুনরায় চালু করুন। সুতরাং উদাহরণস্বরূপ, যদি ডিরেক্টরির নাম foo'bar\qux: cd 'foo'\''bar\qux'। আপনি এটি সেভাবে মনে রাখতে পারেন: একক উদ্ধৃতিতে, '\''আপনাকে একটি একক উদ্ধৃতি পাওয়া যায় gets
  • ব্যাকস্ল্যাশ পদ্ধতিটি নতুন লাইনের জন্য কাজ করে না: ব্যাকস্ল্যাশ-নিউলাইনটি কেবল এড়ানো হবে। আপনাকে একটি নতুন লাইনের চারপাশে একক উক্তি রাখা দরকার।

আপনি ডাবল উদ্ধৃতিগুলিও ব্যবহার করতে পারেন, তবে তারপরে আপনাকে কিছু অক্ষরের আগে একটি ব্যাকস্ল্যাশ লাগাতে হবে। একক উদ্ধৃতিগুলি আরও সোজা।

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

  • এই যুক্তিটি প্রকাশ করার জন্য আরও একটি উপায় সন্ধান করুন। কোনও ফাইলের নামের জন্য, ./সামনে যুক্ত করা একই ফাইলটিকে এখনও মনোনীত করে।
  • যুক্তি --আগে রাখুন । এটি কমান্ডকে বিকল্পগুলির সন্ধান বন্ধ করতে বলে।

সুতরাং আপনি এই উপ-ডিরেক্টরিতে পরিবর্তন করতে পারেন এমন কিছু উপায় এখানে রইল:

cd -- '-3ab_&_-3dc.img'
cd -- -3ab_\&_-3dc.img
cd ./-3ab_\&_-3dc.img
cd './-3ab_&_-3dc.img'

ধন্যবাদ। ভেবেছি আমিও এই ফর্ম্যাটটি চেষ্টা করেছি, তবে আমি এম্পারস্যান্ডটি পালাতে ভুলে গেছি (আপনার তৃতীয় উদাহরণ হিসাবে)। আমি যখন, এটি কাজ করে।
RCinICT

5

এম্পারস্যান্ডটি পালানোর দরকার নেই, তবে আপনার যে সমস্যাটি হচ্ছে তা সম্ভবত -এম্পারস্যান্ডের চেয়ে নেতৃত্বের ক্ষেত্রেই রয়েছে । শীর্ষস্থানীয় -তৈরি সিডি মনে করে যে আপনি বিকল্পগুলিতে যাচ্ছেন। আপনি এটি ব্যবহার করে এটিকে ঘিরে কাজ করতে পারেন ./:

cd './-3ab_&_-3dc.img'

&স্পষ্টভাবে একটি সমস্যা। হিসাবে -, এটি শেল উপর নির্ভর করে। Zsh cdএকটি ডিরেক্টরিতে শুরু করে ডিরেক্টরিতে বেশ খুশি -। তবে বাশ হয় না।
প্যাট্রিক

ধন্যবাদ। ভেবেছিলাম আমিও সেই ফর্ম্যাটটি চেষ্টা করেছি, কিন্তু আমি এম্পারস্যান্ডটি এড়িয়ে যেতে ভুলে গেছি। আমি যখন, এটি কাজ করে।
RCinICT
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.