لینوکس

مسیر مطلق و نسبی در لینوکس؛ کار با pwd و cd

مسیر مطلق و نسبی، تفاوت ریشه و خانه، کار با pwd و cd و تشخیص خطاهای مسیر در لینوکس را با مثال کم‌خطر یاد بگیرید.

رایکت رایکت ۴ دقیقه مطالعه ۰ دیدگاه
مسیر مطلق و نسبی در لینوکس؛ کار با pwd و cd

در لینوکس، مسیر مطلق از ریشهٔ فایل‌سیستم، یعنی / شروع می‌شود؛ مسیر نسبی از پوشهٔ فعلی شما تفسیر می‌شود. با pwd جای فعلی را می‌بینید و با cd آن را تغییر می‌دهید. اگر بعد از اتصال SSH فایل درست را پیدا نمی‌کنید، پیش از هر ویرایش ابتدا همین دو چیز را بررسی کنید: الان کجا هستید و مسیر موردنظر نسبت به کجاست؟

۱. پیش‌نیاز و محدودهٔ کار

این مثال‌ها برای شِل سازگار با POSIX، مانند Bash، هستند. داشتن SSH به معنی دسترسی به تمام مسیرهای سرور نیست؛ حساب محدود یا jailed shell ممکن است فقط بخشی از ساختار را نشان دهد. هیچ‌کدام از فرمان‌های این راهنما فایل را حذف یا ویرایش نمی‌کند.

  • فقط روی حساب و پوشه‌ای کار کنید که اجازهٔ مشاهدهٔ آن را دارید.
  • علامت دلارِ ابتدای prompt را همراه فرمان کپی نکنید.
  • وجود پوشهٔ نمونه را از قبل بررسی کنید؛ مسیرهای نمونه را نام واقعی سرور فرض نکنید.

۲. تفاوت ریشه، خانه و پوشهٔ فعلی

نشانه معنی مثال
/ ریشهٔ فایل‌سیستم /var/log
~ خانهٔ کاربر فعلی در شِل ~/logs
. پوشهٔ فعلی ./logs
.. پوشهٔ بالاتر ../uploads

خانهٔ کاربر و ریشه یک چیز نیستند. نام root هم می‌تواند کاربر مدیر باشد؛ پوشهٔ /root معمولاً خانهٔ همان کاربر است، نه ریشهٔ همهٔ مسیرها. در هاست اشتراکی، مسیر خانه را حدس نزنید؛ آن را از محیط مجاز خودتان بخوانید.

ساختار مفهومی مسیر مطلق و نسبی
نمودار مفهومیِ مسیر نمونه؛ اسکرین‌شات ترمینال نیست.

۳. دیدن موقعیت و جابه‌جایی کنترل‌شده


pwd
cd "docs with spaces"
pwd
cd ..
pwd

این چهار حرکت را از پوشه‌ای اجرا کنید که زیرپوشهٔ docs with spaces دارد. در آزمون آموزشی ما، خروجی دوم به همین زیرپوشه ختم شد و خروجی آخر به پوشهٔ والد برگشت. کوتیشن‌ها نام دارای فاصله را یک آرگومان نگه می‌دارند. cd .. فقط یک سطح بالا می‌رود؛ «بازگشت به خانه» نیست.

  1. با pwd، مسیر فعلی را بخوانید.
  2. قبل از cd، وجود زیرپوشه و املای آن را بررسی کنید.
  3. بعد از cd، دوباره pwd بگیرید؛ موفقیت را از تغییر ظاهری prompt نتیجه نگیرید.

۴. مسیر یکسان، نتیجهٔ متفاوت

اگر در /home/demo باشید، مسیر نسبی logs/app.log به /home/demo/logs/app.log اشاره می‌کند. همان عبارت در پوشهٔ دیگری مقصد متفاوتی دارد. در مقابل، /var/log/app.log به پوشهٔ فعلی وابسته نیست؛ البته ممکن است چنین فایلی روی سرور شما وجود نداشته باشد.

نکته: برای رفتن به خانه معمولاً cd بدون آرگومان یا cd ~ مناسب است. داخل کوتیشنِ دوگانه، “~” الزاماً به خانه گسترش پیدا نمی‌کند؛ برای نامی داخل خانه از “$HOME/logs” استفاده می‌شود. مقدار HOME را بازنویسی نکنید.

وجود لینک نمادین هم مهم است: نمای منطقی مسیر و مقصد واقعی آن می‌توانند متفاوت باشند. pwd -P مسیر فیزیکی را نشان می‌دهد. استفاده از مسیر فیزیکی به‌تنهایی مجوز دسترسی بیشتر ایجاد نمی‌کند.

۵. خطا را درست بخوانید

پیام برداشت درست قدم بعد
No such file or directory نام یا مسیر در این موقعیت پیدا نشده pwd، حروف بزرگ/کوچک و فاصله را بررسی کنید
Not a directory یکی از اجزای مسیر فایل است نوع همان جزء را ببینید
Permission denied اجازهٔ عبور یا مشاهده ندارید مجوز حساب را بررسی کنید؛ sudo را خودکار اضافه نکنید

حروف بزرگ و کوچک روی فایل‌سیستم‌های رایج لینوکس متفاوت‌اند؛ موفق‌بودن یک مسیر روی ویندوز، اثبات درستی همان املاء روی لینوکس نیست. خطای دسترسی را با تغییر گروهی پرمیشن حل نکنید. ابتدا مسیر و حساب درست را تأیید کنید؛ این مقاله مجوز تغییر مالکیت یا دسترسی نیست.

۶. چک نهایی قبل از کار روی فایل

  • مسیر چاپ‌شده با پوشهٔ سایت موردنظر تطبیق دارد.
  • مسیر نسبی را نسبت به همین پوشه می‌خوانید.
  • نام دارای فاصله کوتیشن دارد و حروف آن درست است.
  • در صورت وجود لینک نمادین، مقصد را آگاهانه بررسی کرده‌اید.

برای ادامه، آموزش اتصال SSH مرحلهٔ ورود را توضیح می‌دهد و File Manager راه مشاهدهٔ همین ساختار از داخل سی‌پنل است. لازم نیست برای پیدا کردن یک فایل، محیط یا سطح دسترسی سرور را عوض کنید.

۷. مسیر مطالعهٔ مرتبط

۸. منابع و روش بررسی

منابع رسمی در ۲۴ اکتبر ۲۰۲۶ بررسی شدند. نمونه‌های فرمان با دادهٔ آموزشی در GNU/MSYS روی ویندوز بررسی شده‌اند؛ این محیط، سرور لینوکس بومی نیست. رفتار مالکیت و دسترسی فایل‌سیستم باید روی سیستم مقصد جدا بررسی شود.

این مطلب برایتان مفید بود؟
رایکت
نوشته شده توسط رایکت

تیم محتوای رایکت؛ آموزش‌ها و راهنماهای کاربردی هاست، دامنه و مدیریت سایت.

مطالب مرتبط

دیدگاه‌ها

نظر یا سوال خود را درباره این مطلب با ما در میان بگذارید

دیدگاه خود را بنویسید

aapanel
cloudlinux
cpanel
directadmin
jetbackup
laravel
mysql
virtualizor
vmware
wordpress