আজ
file
এবং less
কমান্ড
দিয়েই শুরু করা যাক,
file বা
Directory কোন
ধরনের সেটি জানতে file
কমান্ড
ব্যবহৃত হয়। যেমন media,
image... এগুলি
হল file টাইপ।
আর
less কমান্ড
ব্যবহৃত হয় ফাইলের ভেতর কি
আছে তার টেক্সট(text)
পড়ার জন্য।
উদাহরণ
:
দেখালো,
hello.c: C source, ASCII text
আর
less
hello.c টাইপ
করলে এর ভেতরে যে লেখা আছে তা
দেখাবে।
ইউনিক্স
সাদৃশ অপারেটিং সিস্টেমের
ধারণা হল, সব
কিছুই ফাইল ,
যেমন jpeg,
mp3, m4a, wav, pdf ইত্যাদি।
গনু/লিনাক্স
সিস্টেমে প্রচুর প্রোগ্রাম
সরাসরি টেক্সট ফাইল ব্যবহার
করে। less
কমান্ড
এসব ফাইল পড়াকে
দ্রুত ও সহজ করে। একটা মজার
জিনিস বলে রাখি। ইউনিক্স
সিস্টেমে একইরকম একটি প্রোগ্রাম
ছিল more
(বাংলা
অর্থ "বেশি")
নামে।
সেটির গনু/লিনাক্স
ভার্সন হল less
(বাংলা
অর্থ "কম")
।
কিন্তু কথা হচ্ছে এই কম কিন্তু
মোটেই কম নয়!
অনেক
বেশি।
এখন
আমাদের একটু জানা উচিৎ টেক্সট
ফাইল কোনগুলোকে বলবো। কম্পিউটার
বিভিন্নরকম তথ্য আমাদের সামনে
বিভিন্নভাবে উপস্থাপন করে।
এইসব তথ্য উপস্থাপনের ক্ষেত্রে
দুটো বিষয় থাকে।
১)
নির্দিষ্ট
ধরনের তথ্য এবং
২)
নির্দিষ্ট
ধরণের সংখ্যায় সেই
তথ্যের প্রকাশ।
কম্পিউটার শুধু সংখ্যা নিয়েই
কাজ করে।
কোনো
কোনো ক্ষেত্রে এই প্রকাশ
পদ্ধতি খুব জটিল যেমন কমপ্রেসড্
(Compressed)
ভিডিও
ফাইল,
অন্যদিকে
কিছু কিছু বেশ সহজ। তথ্য
উপস্থাপনের প্রথমদিকের ও সহজ
উপায় হল আসকি
টেক্সট(ASCI
- American Standard Code for Information Interchange)।
এটা প্রথমে কী-বোর্ডের
ক্যারেক্টারগুলোর সংখ্যাতাত্ত্বিক
অবস্থান দিতে টেলিটাইপ মেশিন
গুলোতে ব্যবহৃত হয়েছিল। খুবই
সহজ পদ্ধতি এবং খুব কম জায়গা
নেয়। একটি অক্ষরের জন্য এক
বাইট(১
বাইট = ৮
বিট )
জায়গা
প্রয়োজন হয়। এক্ষেত্রে বলা
ভালো,
ওয়ার্ড
প্রসেসর দিয়ে তৈরী ডকুমেন্ট
কিন্তু টেক্সট ফাইল নয়। এতে
অনেক ননক্যারেক্টার তথ্য
থাকে ফরম্যাটিং এর জন্যে।
less
এর ব্যবহার
:
less
কমান্ডটি
file কমান্ডটির
মতই ব্যবহার করতে হয়। অর্থাৎ
কমান্ডের আর্গুমেন্ট হিসেবে
ফাইলের_নাম
দিতে হয়। যেমন:
less /etc/passwd।
কমান্ডটি দিলে ফাইলটি দেখাবে।
আপনি উপরে ও নীচে স্ক্রল করে
পড়তে পারবেন এবং q
চেপে এটা
বন্ধ করতে পারবেন।
আমরা
less এর
গুরুত্বপূর্ণ কমান্ডগুলোতে
চোখ বুলিয়ে নিই:
Page
Up or b = এক
পেজ উপরে স্ক্রল করবে।
Page
Down or space = এক
পেজ নীচে স্ক্রল করবে।
Up
Arrow = এক
লাইন উপরে স্ক্রল করবে।
Down
Arrow = এক
লাইন নীচে স্ক্রল করবে।
G
= ফাইলের
একদম শেষে যাবে।
1G
or g = ফাইলের
একদম শুরুতে যাবে।
/characters
= / চিহ্নর
সাথে যা লেখা হবে সেটা খুঁজবে
এবং প্রথম যেখানে পাওয়া গেছে
দেখাবে।
n
= কোনো কিছু
সার্চ করা হলে সেটা আর পরে
কোথায় আছে দেখাবে।
h
= হেল্প
স্ক্রীন দেখাবে।
q
= বন্ধ করবে।
আপনি
হয়ত দেখে থাকবেন ls
-l কমান্ডের
আউটপুটে নিচের ফাইলের মত কিছু
দেখায়:
lrwxrwxrwx
1 root root 11 2007-08-11 07:34 libc.so.6 -> libc-2.6.so
এর
শুরুতে 'l'(ছোট
হাতের L) নির্দেশ
করে যে এটি একটি সিমবোলিক
লিঙ্ক। সিমবোলিক লিঙ্কের
সুবিধা হল এটি একটি ফাইলে
বিভিন্ন নামে প্রকাশের সুযোগ
দেয়। এর প্রয়োজনীতা কি?
আসুন একটু
ভেবে দেখা যাক। লিনাক্স একটি
ফ্রী(মুক্ত)
সফ্টওয়্যার
হওয়ায়, নিজস্ব মালিকানাভুক্ত
সফ্টওয়্যার প্রস্তুতকারকদের
মত নিজেদের রিসোর্স আবদ্ধ
রাখেনা। অধিকাংশ রিসোর্স
বিশেষ করে লাইব্রেরি ফাইলগুলো
একাধিক প্রোগ্রাম দ্বারা
ব্যবহৃত হয়। মনে করেন,
libfoo নামের
একটা লাইব্রেরি ফাইল একটা
প্রোগ্রাম ব্যবহার করে। কিন্তু
এই libfoo হয়ত
প্রতিনিয়ত আপডেট নেয়। এবং
স্বাভাবিকভাবেই প্রত্যেক ভার্সনের নম্বর ফাইলটির সাথে
যুক্ত হয়। এতে সমস্যাও সৃষ্টি
হয়। প্রত্যেকবার libfoo
এর নতুন ভার্সন আসার সাথে সাথে আমাদের
প্রত্যেকটা প্রোগ্রাম খুঁজে
বের করতে হবে যারা এই লাইব্রেরি
ব্যবহার করে আর তাদের এমনভাবে
পরিবর্তন করতে হবে যেন তারা নতুন ভার্সনটি ব্যবহার করতে
পারে। নিজে নিজে করা বেশ
পরিশ্রমসাধ্য।
সিমবোলিক
লিঙ্ক দিয়ে সহজেই এই সমস্যার
সমাধান করা যায়। মনে করি আমরা
libfoo-2.6 ইন্সটল
করেছি এবং একটা সিমবোলিক লিঙ্ক
তৈরী করেছি শুধুমাত্র libfoo
নামে। যে
প্রোগ্রামাররা libfoo
কে তাদের
প্রোগ্রামে ব্যবহার করবে
তারা ওই লিঙ্কটি ব্যবহার করবে।
ফলে আমরা পরে libfoo-2.7
ইন্সটল করে
যখন একই নামে অর্থাৎ libfoo
তে লিঙ্ক
করবো তাকে তার প্রোগ্রামে
পরিবর্তন আনতে হবে না।
সিমবোলিক
লিঙ্ক হার্ড লিঙ্কের চেয়ে
অনেক আধুনিক প্রযুক্তি।
হার্ডলিঙ্ক তার নিজের ড্রাইভের
বাইরে লিঙ্ক তৈরী করতে পারে
না এবং ডিরেক্টরির হার্ড লিঙ্ক
হয় না। সিমবোলিক লিঙ্কের এই
সীমাবদ্ধতাগুলো নেই। সিমবোলিক
লিঙ্ক আর তার অরিজিনাল ফাইলটির
ব্যবহারযোগ্যতায় কোনো পার্থক্য
নেই। তবে লিঙ্কটি ডিলিট করলে
আপনি শুধু লিঙ্কটিই ডিলিট
করবেন, অরিজিনাল
ফাইলটি নয় এবং অরিজিনাল ফাইলটি
ডিলিট করলে লিঙ্কটি ব্রোকেন
লিঙ্ক হিসেবে থাকবে এবং
কোনোকিছুর দিকেই পয়েন্ট করবে
না।
হার্ড
লিঙ্ক:
হার্ড
লিঙ্ক ইউনিক্স সদৃশ সিস্টেমের আসল
লিঙ্কিং পদ্ধতি। প্রত্যেক
ফাইলের অন্তত একটি হার্ড লিঙ্ক
থাকে যা তাকে তার নামটি দেয়, এবং হার্ড লিঙ্ককে তার ফাইলের
সাথে আলাদা করা যায় না। আপনি
যদি একটি হার্ড লিঙ্ক ডিলিট
করেন যদি সেই ফাইলটির আর কোনো
হার্ড লিঙ্ক না থাকে তাহলে
সেটি ডিলিট হয়ে যাবে। আর আরো
হার্ড লিঙ্ক থাকলে যতক্ষণ না
সবগুলো লিঙ্ক ডিলিট করছেন
ফাইলটি ডিলিট হবে না। আগেই
বলেছি, হার্ড
লিঙ্কের দুটি সীমাবদ্ধতা
আছে। এটি নিজের ফাইলসিস্টেম
এর বাইরে, সহজ
কথায় নিজের ড্রাইভের বাইরে
লিঙ্ক করতে পারে না এবং ডিরেক্টরির
হার্ড লিঙ্ক হয় না।
পরবর্তী
দিন আমরা নিচে দেওয়া ৫ টি কমান্ড
এবং তাদের ব্যবহার শিখবো
। আর শিখবো কত সহজে আর দ্রুততার
সাথে এগুলি ব্যবহার করা যায়,
সাথে থাকবে
আরো কিছু কৌশল!
cp
= ফাইল এবং
ডাইরেক্টরি কপি (অনুলিপি)
করতে ব্যবহৃত
হয়।
mv
= ফাইল এবং
ডাইরেক্টরি মুভ/রিনেইম
(move = স্থানান্তর,
rename = নতুন
নামকরণ) করতে
ব্যবহৃত হয়।
mkdir
= ডাইরেক্টরি
তৈরি করতে ব্যবহৃত হয়।
rm
= ফাইল এবং
ডাইরেক্টরি রিমুভ (remove
= মুছে ফেলা
) করতে
ব্যবহৃত হয়।
ln
= হার্ড লিঙ্ক
এবং সিম্বলিক লিঙ্ক তৈরি করে।
এই
পাঁচটি কমান্ড লিনাক্স সিস্টেমে
সবচেয়ে বেশি ব্যবহৃত হয়। আর
এগুলি ফাইল বা ডাইরেক্টরি,
দুই ক্ষেত্রেই
কাজ করে।
Reference
Book: The Linux Command
Line
Writer:
William Shotts Jr.
Third
Internet Edition
কোন
রকমের আত্মপ্রচার বা লাভের
জন্য কিছু নয়,
তাই আমার
পরিশ্রম যদি সামান্য হলেও
আপনার কাজে লাগে,
সেটাই আমার
বড় পাওয়া।
গনু/লিনাক্স
ব্যবহার করুন এবং আপনার পরিচিতজন
দেরও উৎসাহিত করুন। কারণ এটা
মুক্ত,বিনামূল্য
এবং নিরাপদ।
আরো দেখুন,
No comments:
Post a Comment