এই chown কমান্ড করছেন একটি ব্যাকস্ল্যাশ কোলন কি?


2

কি হয় \: নীচের কমান্ড করছেন?

sudo chown nobody\: folder/

এটা কি কোন ধরনের ভুল?


এটি জন্য একটি পালা অক্ষর মত দেখায়:। যদি আপনি একটি স্ট্রিং হিসাবে কমান্ডটি সংরক্ষণ করতে চান, সম্ভবত এটি স্ক্রিপ্টে বা xargs ব্যবহার করতে, আপনাকে কলোন থেকে পালাতে হবে। কিছু কম সাধারণ শেল যে ভাবে পছন্দ হতে পারে। একটি স্ট্রিং বাইরে, সর্বাধিক শেল এটি একটি মাল্টিলাইন ধারাবাহিকতা বিবৃতি হিসাবে আচরণ করবে, যা ঠিক যেমন কার্যকর করা উচিত।
Frank Thomas

1
@ ফ্রাঙ্ক থোমাস: আমি নিশ্চিত নই কেন "আপনি কোলন থেকে পালাতে হবে?"
grawity

আপনি 99% ক্ষেত্রে না। আমি মিসপোক যদি দুঃখিত। এগুলি কেবলমাত্র সম্ভাব্য ক্ষেত্রে যেখানে আপনি থাকতে পারেন, সম্পূর্ণ সঠিক ক্ষেত্রে সঠিকভাবে নির্ভরশীল। উপস্থাপিত লাইন উপস্থিত হতে হবে কোন কারণ certtily আছে। আমি কল্পনা করতে পারি কেন কেউ এটা করতে পারে।
Frank Thomas

এটা টার্মিনাল থেকে সরাসরি ইনপুট। পার্থক্য কি ' কেউ কিছু: ' এবং ' কেউ কিছু এই আদেশে?
dryhay

কিছুই নেই। Chown অনুমান করে যে শুধুমাত্র একটি অপারেড প্রদান করা হয়, যে এটি ব্যবহারকারী। 'চাউনঃ ব্যবহারকারীদের একটি অর্থ হ'ল, ব্যবহারকারীরা একটি গোষ্ঠী বোঝাতে পারে, তবে যদি আপনি শুধুমাত্র মালিক-ব্যবহারকারীকে পরিবর্তন করছেন তবে কলোনটি ব্যবহার করার প্রয়োজন নেই, যদিও আমি বলব, এটি জিনিসগুলিকে অস্পষ্ট করে তোলে । linfo.org/chown.html
Frank Thomas

উত্তর:


0

দ্য \ যে কোন পার্থক্য না, শেল যে নির্মূল করে। দ্য chown উপযোগ একটি আক্ষরিক পাবেন nobody: তার প্রথম যুক্তি হিসাবে।

উপস্থিতি বনাম অনুপস্থিতি : যদিও একটি পার্থক্য করে তোলে। স্পষ্ট বর্ণনা জন্য chown এর ম্যানুয়াল পৃষ্ঠা দেখুন।

sudo chown nobody folder/ মালিক পরিবর্তন, কিন্তু অক্ষত ফাইল গ্রুপ ছেড়ে।

sudo chown nobody: folder/ মালিক এবং ফাইল গ্রুপ উভয় পরিবর্তন। গ্রুপ সেট করা হয় nobody সংজ্ঞায়িত হিসাবে, ব্যবহারকারীর ডিফল্ট গ্রুপ /etc/passwd অথবা কিছু অন্যান্য প্রক্রিয়া (উদাঃ ldap)।


2

ব্যাকস্ল্যাশটি (\) নিশ্চিত করছে যে শেলটি নিম্নোক্ত চরিত্রটিকে একটি হিসাবে ব্যাখ্যা করে না শেল মেটা অক্ষর । কোলন থেকে যেহেতু না যেমন একটি চরিত্র, ব্যাকস্ল্যাশ কার্যকরভাবে কিছুই করছেন।

কোলন (:) "গ্রুপ" থেকে "ব্যবহারকারী" আলাদা করার জন্য ব্যবহৃত হয় - chown কমান্ড উভয় পরিবর্তন ব্যবহারকারী এবং গ্রুপ মালিকানা। কোন গ্রুপ নির্দিষ্ট সঙ্গে, কোলন প্রয়োজনীয় নয় এবং তাই কার্যকরভাবে কিছুই করছেন।


2

কি:

এটা কে বলে অক্ষর escaping , এবং এটা নিশ্চিত করে যে কোলন আক্ষরিকভাবে যেমন আচরণ করা হয়।

কেন:

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

শেল প্রথম কমান্ডটি পড়ে এবং কলোনটিকে বিশেষ চরিত্র হিসাবে গণ্য করা হয় না তা নিশ্চিত করার জন্য, কিন্তু পরিবর্তে চাঁদা পাঠানো এই বিতর্কের অংশ, এটি ব্যাকস্ল্যাশ থেকে পালিয়ে যায়।

এটি উল্লেখ করা উচিত যে এই বিশেষ ক্ষেত্রে আমি কোলনটি ঠিক করার প্রয়োজন বোধ করি না, যেমন গোষ্ঠী নির্দিষ্ট করার জন্য, শুধুমাত্র একটি ফাঁকা গ্রুপের নাম দিন, চাউন দিয়ে প্রয়োজন নেই।

কিভাবে:

ব্যাকস্ল্যাশ সহ একটি চরিত্রের পূর্বরূপটি সাধারণ, এবং শেলটি অন্যথায় ভিন্নভাবে আচরণ করে এমন অনেকের জন্য ব্যবহার করা যেতে পারে। উদাহরণ স্বরূপ:

ls test* পরীক্ষা সঙ্গে শুরু সব ফাইল তালিকাভুক্ত করা হবে ls test\* নামে একটি ফাইল তালিকাভুক্ত করা হবে test* প্রকৃত ফাইল নাম একটি অংশ হিসাবে তারকাচিহ্ন সঙ্গে।


কখনও কখনও, সাধারণ অক্ষর বিশেষভাবে চিকিত্সা করা উচিত যখন আপনি অব্যাহতি চরিত্র ক্ষেত্রে ক্ষেত্রে প্রায় অন্য উপায় ব্যবহার করা যেতে পারে। উদাহরণ অন্তর্ভুক্ত:

  • \n একটি নতুন লাইন
  • \t একটি ট্যাব চরিত্র

0

ব্যাকস্ল্যাশ হয় একটি পালা অক্ষর যা বিশেষ অক্ষরের ব্যাখ্যা সংশোধন করে। তবে কোলন শেল ইন্টারপ্রেটারের জন্য একটি বিশেষ চরিত্র নয় (যেমন bash ), তাই এটি আসলে কিছুই না।

কোলন চরিত্র chown / chmod ব্যবহারকারী এবং গ্রুপ নাম (গ্রুপ অপারেড নির্দিষ্ট করা হয়) পার্থক্য করতে ব্যবহৃত হয়। চাউন ইউটিলিটির পূর্ববর্তী সংস্করণগুলি বিন্দু ব্যবহার করে, তবে এটি একটি কোলন হিসাবে পরিবর্তিত হয়েছিল, কারণ ব্যবহারকারী এবং গোষ্ঠীর নামগুলিতে ডট অক্ষর থাকতে পারে।

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