টার্মিনাল কমান্ডে প্রশ্ন চিহ্নটির অর্থ কী?


11

এই প্রশ্নটি ( আমি কীভাবে কুবুন্টু 12.04 ইনস্টল থেকে জিনোম সরিয়ে ফেলতে পারি? ) এর প্রশ্ন চিহ্ন সহ কমান্ড রয়েছে:

sudo apt-get remove --purge ubuntu-desktop
sudo apt-get remove --purge unity?
sudo apt-get remove --purge gnome?

তাঁরা কি বোঝাতে চাইছেন?

উত্তর:


15

এগুলিকে বলা হয় ওয়াইল্ডকার্ডস (গ্লোব্বিং নিদর্শন)

স্ট্যান্ডার্ড ওয়াইল্ডকার্ডগুলি (গ্লোব্বিং প্যাটার্ন হিসাবেও পরিচিত) একাধিক ফাইলের সাথে কাজ করার জন্য বিভিন্ন কমান্ড-লাইন ইউটিলিটিগুলি দ্বারা ব্যবহৃত হয়।
স্ট্যান্ডার্ড ওয়াইল্ডকার্ডগুলি প্রায় কোনও কমান্ড দ্বারা ব্যবহৃত হয় (এমভি, সিপি, আরএম এবং আরও অনেকগুলি সহ)।

  • (question mark)

    এটি যে কোনও একক চরিত্রকে উপস্থাপন করতে পারে। আপনি যদি "hd" এর মতো কমান্ড লাইনে কিছু নির্দিষ্ট করে থাকেন? জিএনইউ / লিনাক্স এইচডিএ, এইচডিবি, এইচডিসি এবং এজে, 0-9 এর মধ্যে প্রতিটি অন্যান্য বর্ণ / সংখ্যা সন্ধান করবে।

  • *(asterisk)

    এটি যে কোনও সংখ্যক অক্ষরকে উপস্থাপন করতে পারে (শূন্য সহ, অন্য কথায় শূন্য বা আরও বেশি অক্ষর)। আপনি যদি একটি "সিডি *" নির্দিষ্ট করেন তবে এটি "সিডিএ", "সিড্রোম", "সিডিআরকর্ড" এবং "সিডি" দিয়ে নিজেই "সিডি" সহ যে কোনও কিছু শুরু করে। "এম * এল" মিল, মুল, মিলি এবং যে কোনও মি দ্বারা শুরু হয় এবং একটি এল দিয়ে শেষ হয়।

  • [ ] (square brackets)

    একটি ব্যাপ্তি নির্দিষ্ট করে। আপনি যদি এম [এ, ও, ইউ] মি করেন তবে এটি হয়ে উঠতে পারে: ম্যাম, মম, মা যদি আপনি করেন: এম [অ্যাড] এম এটি এমন কিছুতে পরিণত হতে পারে যা এম দিয়ে শুরু হয় এবং শেষ হয় এবং অভ্যন্তরে কোনও চরিত্র থাকে any উদাহরণস্বরূপ, এগুলি কাজ করবে: ম্যাম, এমবিএম, এমসিএম, এমডিএম। এই ধরণের ওয়াইল্ডকার্ড একটি "বা" সম্পর্ক নির্দিষ্ট করে (আপনার কেবল ম্যাচ করার জন্য একটি প্রয়োজন)।

  • { } (curly brackets)

    পদগুলি কমা দ্বারা পৃথক করা হয় এবং প্রতিটি পদ অবশ্যই কোনও কিছুর বা ওয়াইল্ডকার্ডের নাম হতে হবে। এই ওয়াইল্ডকার্ড ওয়াইল্ডকার্ড (গুলি), বা সঠিক নাম (গুলি) (একটি "বা" সম্পর্ক, একটি বা অন্য) এর সাথে মেলে এমন কোনও কিছু অনুলিপি করবে।


উদাহরণস্বরূপ, এটি বৈধ হবে:

  • সিপি { .ডোক, .পিডিএফ} ~

    এটি ব্যবহারকারীর হোম ডিরেক্টরিতে .doc বা .pdf- র সাথে শেষ হওয়া কোনও কিছুই অনুলিপি করবে। নোট করুন যে কমাগুলির পরে (বা অন্য কোথাও) জায়গাগুলির অনুমতি নেই।

  • [!]

    এই কনস্ট্রাক্টটি [] কনস্ট্রাক্টের অনুরূপ, বন্ধনীগুলির মধ্যে কোনও অক্ষরের সাথে মিল না রেখে এটি কোনও অক্ষরের সাথে মিলবে, যতক্ষণ না এটি [এবং] এর মধ্যে তালিকাভুক্ত না থাকে। এটি একটি যৌক্তিক নয়। উদাহরণস্বরূপ, আরএম মাইফাইল [! 9] সমস্ত মাইফিল * * (যেমন মাইফাইলস 1, মাইফাইল 2 ইত্যাদি) সরিয়ে ফেলবে তবে 9 নাম্বার সহ একটি ফাইলের নামের বাইরে কোথাও সরিয়ে ফেলবে না।

  • \ (backslash)

    একটি "পলায়ন" চরিত্র হিসাবে ব্যবহৃত হয়, অর্থাত্ পরবর্তী বিশেষ চরিত্রটি রক্ষা করতে। সুতরাং, "\" একটি ব্যাকস্ল্যাশ অনুসন্ধান করে Note নোট করুন আপনার উদ্ধৃতি চিহ্ন এবং ব্যাকস্ল্যাশ (এস) ব্যবহার করার প্রয়োজন হতে পারে।

আরও উদাহরণের জন্য: এই পৃষ্ঠাটি দেখুন


3
এটি উল্লেখযোগ্য যে প্যাকেজের নাম apt-get removeপ্রয়োজন , ফাইলের নাম নয় যা শেল দ্বারা ওয়াইল্ডকার্ড সম্প্রসারণকে বৃহতভাবে অকেজো করে তোলে। আপনি যদি প্যাকেজের একটি পরিসর সরিয়ে নিতে চান তবে শেলটিকে গ্লোব (উদাহরণস্বরূপ ) হিসাবে ব্যাখ্যা করার চেষ্টা থেকে রক্ষা করতে যথাযথভাবে উদ্ধৃত একটি পূর্ণ নিয়মিত এক্সপ্রেশন ব্যবহার করতে হবে । apt-get remove 'gnome.*'

4
Standard wildcards are used by nearly any command (including mv, cp, rm and many others).=> মিথ্যা। এই ওয়াইল্ডকার্ডগুলি শেল দ্বারা প্রসারিত করা হচ্ছে এবং কমান্ডটি যা পায় তা প্যাটার্নের পরিবর্তে প্রসারণের (অর্থাত প্যাটার্নের সাথে মেলে এমন ফাইলগুলি) ফলাফল। (যদি প্যাটার্নের সাথে মেলে এমন কোনও ফাইল না থাকে তবে সেই প্যাটার্নটি সরাসরি কমান্ডে পাঠানো হবে, যদিও)
কার্লোস ক্যাম্পার্ডার্স

17

সাধারণভাবে বলতে গেলে, বাশ-এ, ?একটি গ্লোবাল প্যাটার্ন যা একটি স্বেচ্ছাসেবী চরিত্রে প্রসারিত হয়।

উদাহরণ স্বরূপ:

$ echo Hello1 > foo1
$ echo Hello2 > foo2
$ cat foo?
Hello1
Hello2

এটি একটির অনুরূপ *, তবে *এটি 0 বা ততোধিক অক্ষরে ?বিস্তৃত হয় , যখন প্রসারটি হুবহু একের (স্বেচ্ছাচারী) চরিত্রে প্রসারিত হয় ।

আপনার বিশেষ ক্ষেত্রে যদিও, ?কমান্ডটি স্পষ্টতই একটি টাইপ ছিল।


সুতরাং এটি আমার ক্ষেত্রে অকেজো / অযথা, তাই না?
ওকার

হ্যাঁ. বাস্তবে এটি সম্পাদনা করা হয়েছিল যখন আপনি আপনার প্রশ্ন জিজ্ঞাসা করেছিলেন তখন আপনি উত্তরটি যুক্ত করেছিলেন। :)
মাল্টে স্কোরুপা

1
এটি বিশ্বাস করা যায় না: -ও
ওকার

1
এমনকি যদি সেগুলি সঠিক ওয়াইল্ডকার্ডও ছিল, উদ্ধৃতি না দিয়ে এই ব্যবহারটি এড়ানো উচিত। apt-get আরইএসগুলি বুঝতে পারুন, তবে gnome1বর্তমান ডিরেক্টরিটিতে কোনও ফাইল নামে পরিচিত থাকলে শখটি এটি-র দেখার কোনও সুযোগ পাওয়ার আগে শেলটি এটি প্রসারিত করবে।
রোমানো

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