চারটি /dev/fd/0
, /dev/stdin
, /proc/self/fd/0
এবং /dev/pts/2
ফাইলের নাম হয়, হিসাবে /////dev/../dev/fd//0
, /bin/sh
, /etc/fstab
, /fioejfoeijf
, ইত্যাদি সকল কিন্তু যে শেষ উদাহরণ আপনার মেশিনে একটি বিদ্যমান ফাইল নাম হতে করার সম্ভাবনা বেশি। একটি ফাইলের নাম এমন একটি স্ট্রিং যা আপনার ফাইল সিস্টেমে কোনও ফাইলকে মনোনীত করতে পারে; লিনাক্সের অধীনে, এমন কোনও স্ট্রিং যাতে নাল বাইট থাকে না এবং এটি প্রায় 4096 বাইট দীর্ঘ হয় একটি বৈধ ফাইলের নাম। এই নামগুলি অনেক সমতুল্য, যেমন হয় /bin/sh
হয় সমতুল্য ///bin/sh
, /bin/../bin/sh
(অভিমানী /bin
একটি বিদ্যমান ডিরেক্টরী হয়) ইত্যাদি সকল উদাহরণ আমি দিয়েছি এতদূর পরম ফাইলের নাম আছে; আপেক্ষিক ফাইলের নামও রয়েছে, যা একটি দিয়ে শুরু হয় না /
এবং যার অর্থ বর্তমান ডিরেক্টরিতে নির্ভর করে।
ফাইলের নামগুলির আশেপাশের পরিভাষা সর্বজনীন নয়; কখনও কখনও "ফাইলের নাম" অর্থ কোনও ফাইলের পুরো পথ, এবং কখনও কখনও এর অর্থ ডিরেক্টরি প্রবেশের নাম। POSIX পরিভাষাটি ডিরেক্টরি ফাইলের প্রবেশের নামের জন্য " ফাইলের নাম " বা " পথের নাম উপাদান " এবং একটি পুরো পথের জন্য "পথের নাম "।
একটি ফাইল বর্ণনাকারী একটি নির্দিষ্ট প্রক্রিয়াতে একটি খোলার ফাইল ডিজাইন করে। কার্নেল প্রতিটি প্রক্রিয়াটির জন্য ফাইল বর্ণনাকারীর একটি সারণী বজায় রাখে। ফাইল বর্ণনাকারী সারণীতে প্রতিটি এন্ট্রি নির্দেশ করে যে প্রক্রিয়াটি যদি ফাইল বর্ণনাকারীতে পড়া, লেখার এবং অন্যান্য ক্রিয়াকলাপের জন্য অনুরোধ করে তবে কী করবেন।
ফাইল বর্ণনাকারীরা কোনও ফাইলের সাথে মিল থাকতে পারে এবং এর একটি যুক্ত নাম থাকতে পারে, তবে তাদের সবকটিই তা করে না। যাঁরা করেন, তাদের জন্য ফাইলটি নিয়মিত ফাইল, ডিরেক্টরি, একটি ডিভাইস ফাইল বা একটি নামক পাইপ (এফআইএফওও বলা হয়) হতে পারে (তৈরির ধরণ mkfifo
); কিছু সিস্টেমে আরও সম্ভাবনা রয়েছে যেমন ইউনিক্স সকেট এবং দরজা। ফাইল বর্ণনাকারীর উদাহরণগুলির সাথে সম্পর্কিত নামযুক্ত ফাইল নেই পাইপগুলি (ধরণের তৈরির ধরণ pipe
) এবং নেটওয়ার্কিং সকেট অন্তর্ভুক্ত ।
/dev/fd/0
, /dev/stdin
এবং /proc/self/fd/0
একটি অদ্ভুত অর্থ সহ ফাইলের নাম (সমস্ত সমতুল্য): ফাইলগুলি বর্তমানে ফাইল বর্ণনাকারী দ্বারা যে কোনও ফাইল অ্যাক্সেস করা যায় তা নির্ধারণ করে 0. বর্ননাকারী। এই ফাইলগুলির যে কোনওটি খোলার কল করার সমতুল্য dup(0)
। নামযুক্ত ফাইলগুলি নতুন ফাইল খোলার পরিবর্তে অপ্রত্যাশিতভাবে এর ইতিমধ্যে খোলা ফাইলগুলির একটি ব্যবহার করার প্রক্রিয়া পাওয়ার উপায়; এগুলি বেশিরভাগই কোনও প্রোগ্রামের কমান্ড লাইনে পাস করার জন্য দরকারী, যেখানে প্রোগ্রামটি কোনও ফাইলের নাম খোলার প্রত্যাশা করে।