এলএফসিএস: লিনাক্সে ফাইলগুলি তৈরি, সম্পাদনা এবং পরিচালনা করার জন্য জিএনইউ সেড কমান্ড কীভাবে ব্যবহার করবেন - পার্ট 1


লিনাক্স ফাউন্ডেশন এলএফসিএস (লিনাক্স ফাউন্ডেশন সার্টিফাইড সিসাদমিন) শংসাপত্র ঘোষণা করেছে, একটি নতুন প্রোগ্রাম যার লক্ষ্য বিশ্বজুড়ে সমস্ত ব্যক্তিকে লিনাক্স সিস্টেমের জন্য অন্তর্বর্তী সিস্টেম প্রশাসনের কাজে সার্টিফিকেট পেতে সহায়তা করা। এর মধ্যে প্রথম হ্যান্ড ট্রাবলশুটিং এবং বিশ্লেষণের পাশাপাশি চলমান সিস্টেম এবং পরিষেবাদি এবং ইঞ্জিনিয়ারিং দলগুলিতে সমস্যাগুলি বাড়ানোর জন্য স্মার্ট সিদ্ধান্ত গ্রহণ অন্তর্ভুক্ত রয়েছে।

লিনাক্স ফাউন্ডেশন শংসাপত্র প্রোগ্রাম সম্পর্কে প্রদর্শিত নিম্নলিখিত ভিডিওটি দেখুন rates

সিরিজটির নাম এলএফসিএসের জন্য প্রস্তুতি (লিনাক্স ফাউন্ডেশন সার্টিফাইড সিসাদমিন) পার্টস 1 থেকে 10 পর্যন্ত থাকবে এবং উবুন্টু, সেন্টোস এবং ওপেনসুএসের জন্য নিম্নলিখিত বিষয়গুলি আবরণ করা হবে:

এই পোস্টটি একটি 20-টিউটোরিয়াল সিরিজের অংশ 1, যা এলএফসিএস শংসাপত্র পরীক্ষার জন্য প্রয়োজনীয় ডোমেন এবং দক্ষতাগুলি কভার করবে। বলা হচ্ছে, আপনার টার্মিনালটি জ্বালিয়ে দিন এবং শুরু করা যাক।

লিনাক্সে পাঠ্য স্ট্রিমগুলি প্রসেসিং করা হচ্ছে

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

> (পুনর্নির্দেশ অপারেটর) এবং | (পাইপলাইন অপারেটর) এর মধ্যে পার্থক্য হ'ল প্রথমটি যখন কোনও কমান্ডকে কোনও ফাইলের সাথে সংযুক্ত করে, তবে পরবর্তীটি একটি কমান্ডের আউটপুটটিকে অন্যটির সাথে সংযুক্ত করে আদেশ

# command > file
# command1 | command2

যেহেতু পুনর্নির্দেশ অপারেটর নিঃশব্দে ফাইলগুলি তৈরি করে বা ওভাররাইট করে, তাই আমাদের অবশ্যই এটি চূড়ান্ত সতর্কতার সাথে ব্যবহার করতে হবে এবং পাইপলাইনে এটি কখনও ভুল করবেন না। লিনাক্স এবং ইউনিক্স সিস্টেমে পাইপের একটি সুবিধা হ'ল পাইপের সাথে কোনও অন্তর্বর্তী ফাইল নেই - প্রথম কমান্ডের স্টাডআউট কোনও ফাইলে লেখা হয় না এবং পরে দ্বিতীয় কমান্ড দ্বারা পড়ে।

নিম্নলিখিত অনুশীলন অনুশীলনের জন্য আমরা “ একটি সুখী শিশু ” (বেনাম লেখক) কবিতাটি ব্যবহার করব।

সে নামটি স্ট্রিম সম্পাদকের জন্য সংক্ষিপ্ত। এই শব্দটির সাথে অপরিচিতদের জন্য, একটি স্ট্রিম সম্পাদক একটি ইনপুট স্ট্রিমে (কোনও পাইপলাইনের কোনও ফাইল বা ইনপুট) মৌলিক পাঠ্য রূপান্তর করতে ব্যবহৃত হয়।

শেডের সর্বাধিক বুনিয়াদি (এবং জনপ্রিয়) ব্যবহার হ'ল অক্ষরের প্রতিস্থাপন। আমরা ছোট হাতের y এর প্রতিটি ঘটনাকে UPPERCASE Y এ পরিবর্তন করে এবং আউটপুটটিকে ahappychild2.txt এ পুনঃনির্দেশ দিয়ে শুরু করব। পতাকা নির্দেশ করে যে শেড ফাইলের প্রতিটি লাইনে শর্তের সমস্ত দৃষ্টান্তের জন্য প্রতিস্থাপন করা উচিত। যদি এই পতাকাটি বাদ দেওয়া হয় তবে সেড প্রতিটি লাইনে কেবলমাত্র পদটির প্রথম উপস্থিতিকে প্রতিস্থাপন করবে।

# sed ‘s/term/replacement/flag’ file
# sed ‘s/y/Y/g’ ahappychild.txt > ahappychild2.txt

আপনি যদি কোনও বিশেষ চরিত্রের সন্ধান বা প্রতিস্থাপন করতে চান (যেমন /, \, & ) শব্দটি থেকে আপনার এটিকে এড়াতে হবে বা রিপ্লেসমেন্ট স্ট্রিং, একটি পিছনে স্ল্যাশ সহ।

উদাহরণস্বরূপ, আমরা শব্দটি এবং একটি এম্পারস্যান্ডের বিকল্প করব will একই সাথে, প্রথম লাইনের শুরুতে যখন খুঁজে পাওয়া যায় তখন আমরা আমি শব্দটি আপনি এর সাথে প্রতিস্থাপন করব।

# sed 's/and/\&/g;s/^I/You/g' ahappychild.txt

উপরের কমান্ডে, একটি ^ (ক্যারেট সাইন) একটি সুপরিচিত নিয়মিত অভিব্যক্তি যা কোনও লাইনের শুরুর প্রতিনিধিত্ব করতে ব্যবহৃত হয়।

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

সেডের আরেকটি ব্যবহার ফাইলের একটি নির্বাচিত অংশ দেখাচ্ছে (বা মোছা)। নিম্নলিখিত উদাহরণে, আমরা জুন 8 থেকে /var/লগ/বার্তা এর প্রথম 5 টি লাইন প্রদর্শন করব।

# sed -n '/^Jun  8/ p' /var/log/messages | sed -n 1,5p

নোট করুন যে ডিফল্টভাবে, সেড প্রতিটি লাইন মুদ্রণ করে। আমরা এই আচরণটি - এন বিকল্পের সাথে ওভাররাইড করতে পারি এবং তারপরে সেডকে বলতে পারি ( পি দ্বারা নির্দেশিত) কেবল ফাইলের (বা পাইপ) অংশের সাথে মেলে যা প্যাটার্নের সাথে মেলে (প্রথম ক্ষেত্রে লাইনের শুরুতে জুন 8 এবং দ্বিতীয় ক্ষেত্রে 1 টির মধ্যে 5 টি লাইন))

পরিশেষে, কোডটি নিজেই পরিদর্শন করতে এবং মন্তব্যগুলি ছেড়ে দেওয়ার জন্য স্ক্রিপ্টগুলি বা কনফিগারেশন ফাইলগুলি পরিদর্শন করার সময় এটি কার্যকর হতে পারে। নীচের সেড ওয়ান-লাইনার ( ডি ) খালি লাইনগুলি মুছে ফেলা হয় বা # ( | অক্ষর দিয়ে শুরু করে দুটি নিয়মিত মধ্যে একটি বুলিয়ান OR নির্দেশ করে এক্সপ্রেশন)।

# sed '/^#\|^$/d' apache2.conf

uniq কমান্ডটি আমাদের একটি ফাইলে নকল লাইনগুলি প্রতিবেদন করতে বা অপসারণ করতে দেয়, ডিফল্টরূপে stdout এ লিখতে। আমাদের অবশ্যই লক্ষ্য রাখতে হবে uniq পুনরাবৃত্ত লাইনগুলি সংলগ্ন না হলে সনাক্ত করে না। সুতরাং, ইউনিট সাধারণত পূর্ববর্তী সাজানো (যা পাঠ্য ফাইলগুলির লাইনগুলি বাছাই করতে ব্যবহৃত হয়) সহ ব্যবহৃত হয়। ডিফল্টরূপে সাজান প্রথম ক্ষেত্রটি (স্পেস দ্বারা পৃথক) কী ক্ষেত্র হিসাবে নেয়। একটি আলাদা কী ক্ষেত্র নির্দিষ্ট করতে, আমাদের -কে বিকল্পটি ব্যবহার করতে হবে।

du –sch/path/to/ডিরেক্টরি/* কমান্ডটি সাব-ডাইরেক্টরিজ প্রতি ডিস্ক স্পেসের ব্যবহার এবং মানব-পঠনযোগ্য ফর্ম্যাটে নির্দিষ্ট ডিরেক্টরিতে থাকা ফাইলগুলি (প্রতিটি ডিরেক্টরিকেও মোট দেখায়) প্রদান করে এবং তা করে না আকার অনুসারে আউটপুট অর্ডার করুন, তবে উপ-ডিরেক্টরি এবং ফাইলের নাম দ্বারা। আকার অনুসারে বাছাই করতে আমরা নিম্নলিখিত কমান্ডটি ব্যবহার করতে পারি।

# du -sch /var/* | sort –h

আপনি প্রতিটি লাইনটির প্রথম 6 টি অক্ষর (-ডাব্লু 6) ব্যবহার করে (যেখানে তারিখটি নির্দিষ্ট করা আছে) ব্যবহার করে তুলনাটি সম্পাদন করতে ইউনিক কে এবং তারিখ অনুসারে একটি লগের ইভেন্টের সংখ্যা গণনা করতে পারেন এবং প্রতিটি উপসর্গ রেখে নিম্নলিখিত কমান্ডের সাথে সংঘর্ষের সংখ্যার (-সি ) আউটপুট লাইন।

# cat /var/log/mail.log | uniq -c -w 6

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

# cat sortuniq.txt | cut -d: -f1 | sort | uniq

আরও পড়ুন : 13 "বিড়াল" কমান্ডের উদাহরণ

গ্রেপ নির্দিষ্ট নিয়মিত প্রকাশের ঘটনার জন্য পাঠ্য ফাইল বা (কমান্ড আউটপুট) অনুসন্ধান করে এবং স্ট্যান্ডার্ড আউটপুটে ম্যাচযুক্ত কোনও লাইন আউটপুট করে।

কেসকে উপেক্ষা করে, ব্যবহারকারী গ্যাকানপা জন্য /ইত্যাদি/পাসডাব্লু এর তথ্য প্রদর্শন করুন।

# grep -i gacanepa /etc/passwd

যার নামটি আরসি দিয়ে শুরু হয় তার পরে কোনও একক সংখ্যার /ইত্যাদি এর সমস্ত সামগ্রী দেখান।

# ls -l /etc | grep rc[0-9]

আরও পড়ুন : 12 "গ্রেপ" কমান্ড উদাহরণ

টিআর কমান্ড স্ট্যান্ডিন থেকে অক্ষর অনুবাদ করতে (পরিবর্তন করতে) বা মুছতে এবং স্টাডআউটে ফলাফল লিখতে ব্যবহার করা যেতে পারে।

সমস্ত ছোট হাতের অক্ষরকে সাজ্টুনিক.টি.এস.টি. ফাইলে পরিবর্তন করুন Change

# cat sortuniq.txt | tr [:lower:] [:upper:]

কেবলমাত্র একটি জায়গাতে ls আউটপুটে ডিলিমিটারটি নিন।

# ls -l | tr -s ' '

কাট কমান্ড ইনপুট লাইনের কিছু অংশ (স্টাডিন বা ফাইলগুলি থেকে) বের করে এবং বাইটের সংখ্যার (-বি বিকল্প) এর উপর ভিত্তি করে অক্ষর (<< b> -c ), বা ক্ষেত্রগুলি ( -f )। এই শেষ ক্ষেত্রে (ক্ষেত্রের উপর ভিত্তি করে), ডিফল্ট ক্ষেত্র বিভাজক একটি ট্যাব, তবে -d বিকল্পটি ব্যবহার করে একটি পৃথক ডিলিমিটার নির্দিষ্ট করা যায়।

/ইত্যাদি/পাসডাব্লু থেকে তাদের নির্ধারিত ব্যবহারকারীর অ্যাকাউন্টগুলি এবং ডিফল্ট শেলগুলি বের করুন ( অ্যাড বিকল্পটি ক্ষেত্রের ডিলিমিটার এবং specifyf নির্দিষ্ট করতে দেয় স্যুইচটি নির্দেশ করে যে কোন ক্ষেত্র (গুলি) বের করা হবে।

# cat /etc/passwd | cut -d: -f1,7

সংক্ষেপে, আমরা শেষ কমান্ডের আউটপুটটির প্রথম এবং তৃতীয় খালি ফাইলগুলি সমন্বিত একটি পাঠ্য স্ট্রিম তৈরি করব। আমরা গ্রেপ ব্যবহারকারীর গ্যাকানপা সেশনের জন্য প্রথম ফিল্টার হিসাবে ব্যবহার করব, তারপরে কেবলমাত্র একটি জায়গাতে ডিলিমেটারগুলিকে সঙ্কুচিত করুন ( টিআর-এস '' )। এরপরে, আমরা কাট দিয়ে প্রথম এবং তৃতীয় ক্ষেত্রগুলি বের করব এবং শেষ পর্যন্ত দ্বিতীয় ক্ষেত্র অনুসারে বাছাই করব (এই ক্ষেত্রে আইপি ঠিকানাগুলি) অনন্য দেখাচ্ছে।

# last | grep gacanepa | tr -s ' ' | cut -d' ' -f1,3 | sort -k2 | uniq

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

সারসংক্ষেপ

যদিও এই উদাহরণটি (বর্তমান টিউটোরিয়ালের বাকী উদাহরণগুলির সাথে) প্রথম দর্শনে খুব দরকারী বলে মনে হচ্ছে না, লিনাক্স থেকে ফাইলগুলি তৈরি করতে, সম্পাদনা করতে এবং পরিচালনা করতে ব্যবহৃত কমান্ডগুলি নিয়ে পরীক্ষা-নিরীক্ষা করা এগুলি একটি দুর্দান্ত সূচনা পয়েন্ট point কমান্ড লাইন আপনার প্রশ্ন এবং নীচে মন্তব্যগুলি নির্দ্বিধায় ছেড়ে দিন - সেগুলি অনেক প্রশংসা হবে!

  1. এলএফসিএস সম্পর্কে
  2. কেন একটি লিনাক্স ফাউন্ডেশন শংসাপত্র পাবেন?
  3. এলএফসিএস পরীক্ষার জন্য নিবন্ধন করুন