সমস্ত ইউনিক্স গ্রুপের নাম তালিকাভুক্ত করার জন্য একটি আদেশ আছে? [বন্ধ]


615

আমি জানি এমন একটি /etc/groupফাইল আছে যা সমস্ত ব্যবহারকারীর গোষ্ঠীগুলির তালিকা করে।

আমি জানতে চাই যে বিশ্বের পাঠযোগ্য /etc/groupফাইলটি বিশ্লেষণ করেও সমস্ত ব্যবহারকারীর গ্রুপের নাম তালিকাভুক্ত করার জন্য একটি সাধারণ কমান্ড রয়েছে কিনা । আমি একটি প্রশাসক ওয়েব পৃষ্ঠা তৈরি করতে ইচ্ছুক যা লিনাক্স অ্যাকাউন্টগুলির গ্রুপের নাম তালিকাভুক্ত করে।


6
এ পর্যন্ত সে চেষ্টা stackoverflow.com/questions/14059916/...
ott--

2
"আমি লিনাক্স ব্যবহারকারীদের তালিকাভুক্ত একটি ওয়েব পৃষ্ঠা তৈরি করতে ইচ্ছুক" - আপনি কোন সমস্যার সমাধানের চেষ্টা করছেন? এটি এমন কিছুর মতো শোনায় যা কিছু সুরক্ষিত সমস্যা তৈরি করতে পারে (ব্যবহারকারীদের তালিকা প্রকাশ করা, শংসাপত্রগুলি প্রকাশ করা)।

আমি একটি সাধারণ উদাহরণ দেওয়ার চেষ্টা করছিলাম। আমি একটি "বর্তমান লিনাক্স অ্যাকাউন্টগুলির নাম তালিকার জন্য প্রশাসক সিস্টেম ওয়েব পৃষ্ঠা" খুলতে চাই। লিনাক্সে আমি কোনও ব্যবহারকারী যুক্ত করতে, ব্যবহারকারীর অপসারণ করতে, ব্যবহারকারীর পরিবর্তন করতে, প্রদত্ত ব্যবহারকারীর গোষ্ঠীগুলি সন্ধান করার জন্য কমান্ডগুলি খুঁজে পেতে পারি কিন্তু নামের খণ্ড অনুসারে কোনও ব্যবহারকারী অনুসন্ধান করার জন্য কোনও আদেশ খুঁজে পাইনি। আমি মনে করি প্রশ্নটি এত অপ্রাসঙ্গিক নয়। লিনাক্স গ্রুপ অ্যাকাউন্টটি স্মরণে রাখতে আমি যা করতে পারি তা হ'ল / ইত্যাদি / গ্রুপ ফাইলে একটি
লুকিং করা ছিল

উত্তর:


871

সমস্ত স্থানীয় গোষ্ঠীগুলির তালিকাভুক্ত করতে যা ব্যবহারকারীদেরকে অর্পণ করা হয়েছে, এই আদেশটি ব্যবহার করুন:

cut -d: -f1 /etc/group | sort

আরও তথ্যের জন্য-> ইউনিক্স গ্রুপগুলি , কাট কমান্ড , সাজান কমান্ড


3
হ্যাঁ মাইকেলআইআইটি ঠিক বলেছেন গ্রুপ কমান্ড সমস্ত গ্রুপকে তালিকাভুক্ত করে নি। আমি এটি জিজ্ঞাসা করেছি কারণ নিশ্চিত নয় যে গ্রুপগুলির মতো একটি সাধারণ কমান্ড রয়েছে যা সমস্ত গ্রুপের নাম তালিকাভুক্ত করে বা এমন একটি সুইথও গ্রুপগুলির মতো [-a | - all] ফাইল স্ক্যান না করে সমস্ত সিস্টেম গ্রুপকে তালিকাবদ্ধ করে।
কাভিলা

1
ঠিক আছে তাই আপাতত উত্তরটি নেই। গ্রুপ ফাইলটি ফিল্টার করতে পাঠ্য সম্পাদনাটি ব্যবহার করা দরকার।
কাভিলা

3
"কাট-ডি: -ফ 1" কী?
জেড

5
@zed cutহ'ল একটি কমান্ড যা একটি ইনপুট থেকে নির্দিষ্ট কলামটি বের করে। এখানে আমি ক্ষেত্র 1 টি বের করছি যেখানে ক্ষেত্রগুলি সীমিত করা হয়:
অর্পিত

267

আপনি যদি সিস্টেমটিতে পরিচিত সমস্ত গোষ্ঠীগুলি চান তবে আমি getent groupপার্সিংয়ের পরিবর্তে ব্যবহারের পরামর্শ দেব /etc/group:

getent group

কারণটি হ'ল নেটওয়ার্ক সিস্টেমে, গোষ্ঠীগুলি কেবলমাত্র পড়তে পারে না /etc/group ফাইল , তবে এটি এলডিএপি বা ইয়েলো পেজগুলির মাধ্যমেও পাওয়া যায় (পরিচিত গ্রুপগুলির তালিকা স্থানীয় গ্রুপের ফাইল প্লাস গ্রুপগুলি থেকে এই ক্ষেত্রে এলডিএপি বা ওয়াইপির মাধ্যমে প্রাপ্ত) থেকে আসে।

আপনি যদি কেবলমাত্র গ্রুপের নাম চান তবে আপনি ব্যবহার করতে পারেন:

getent group | cut -d: -f1

7
কিছু ব্যবহারের ক্ষেত্রে গোষ্ঠী নামের একটি বাছাই করা তালিকা পছন্দনীয় হতে পারে:getent group | cut -d: -f1 | sort
ব্যবহারকারী 1364368

2
যদি সংখ্যাযুক্ত লাইনগুলি কাঙ্ক্ষিত হয় তবে করুন getent group | cut -d: -f1 | sort | cat -n
এমএলসি

এলডিএপ জাতীয় নেটওয়ার্ক সিস্টেমের জন্য দুর্দান্ত পয়েন্ট!
মাজিয়ার

50

লিনাক্স, ম্যাকোস এবং ইউনিক্সে আপনি যে গোষ্ঠীগুলির অন্তর্ভুক্ত তা প্রদর্শন করতে ব্যবহার করুন:

id -Gn

যা groupsইউনিক্সের সমান যা ইউনিক্সে ( ইউনিক্স ম্যানুয়াল অনুসারে ) অপ্রচলিত ।

ম্যাকোস এবং ইউনিক্সে, কমান্ডটি id -pস্বাভাবিক ইন্টারেক্টিভের জন্য প্রস্তাবিত।

পরামিতিগুলির ব্যাখ্যা:

-G, --groups- সমস্ত গ্রুপ আইডি মুদ্রণ করুন

-n, --name- এর জন্য একটি সংখ্যার পরিবর্তে একটি নাম মুদ্রণ করুন-ugG

-p - আউটপুট মানব-পঠনযোগ্য করুন।


10
এবং id -Gn someusernameনির্দিষ্ট ব্যবহারকারীর জন্য গোষ্ঠীগুলির তালিকা প্রদান করে।
গুরুতর

6
id -Gnz | xargs -0 -I% echo %প্রতিটি গ্রুপকে আলাদা লাইনে তালিকাবদ্ধ করবে। গ্রুপের নামগুলির মধ্যে ফাঁকা স্থান থাকলে এটি কার্যকর।
লাকাটা

1
groupsঅপ্রচলিত কিভাবে ? কোন সূত্র? আমি "ইউনিক্স গ্রুপগুলি অপ্রচলিত কমান্ড" অনুসন্ধান করেছি কিন্তু কিছুই পাইনি।
ফ্রাঙ্কলিন ইউ

1
@ ফ্র্যাঙ্কলিনইউ এটির জন্য BSD ম্যানুয়াল পৃষ্ঠায়groups
কেনরব

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