دستورات لینوکس ابزارهای اصلی برای ارتباط با سیستمعامل هستند. با یادگیری این دستورات میتوانید فایلها را مدیریت کنید، سیستم را پیکربندی کنید، اطلاعات بگیرید و کارهای روزمره را به سرعت انجام دهید. این مقاله مخصوص افرادی است که تازه با لینوکس آشنا شدهاند و میخواهند مهمترین دستورات را به سادگی یاد بگیرند.
۱. دستورات مسیریابی
این دستورات به شما کمک میکنند که در ساختار پوشههای لینوکس حرکت کنید و ببینید کجا هستید.
pwd – نمایش مسیر فعلی
دستور pwd (Print Working Directory) مسیر کامل دایرکتوری فعلی را نشان میدهد:
pwd
# Output: /home/username
ls – نمایش محتویات دایرکتوری
با ls میتوانید لیست فایلها و پوشههای یک مسیر را ببینید. گزینههای پرکاربرد:
ls -l: نمایش جزئیات کامل (مجوزها، مالک، حجم، تاریخ).ls -a: نمایش همه فایلها شامل فایلهای مخفی که با نقطه شروع میشوند.ls -lh: نمایش حجم فایلها به صورت قابل خواندن (مثلاً KB، MB).
ls -l
# Output: drwxr-xr-x 2 user user 4096 May 25 10:00 Documents
cd – تغییر دایرکتوری
با cd (Change Directory) بین پوشهها جابهجا میشوید:
cd /home/user/Documents # رفتن به پوشه Documents
cd .. # رفتن به یک سطح بالاتر
cd ~ # رفتن به پوشه خانه کاربر
cd / # رفتن به ریشه سیستم
۲. مدیریت فایلها و دایرکتوریها
این دستورات برای ایجاد، کپی، انتقال و حذف فایلها و پوشهها استفاده میشوند.
mkdir – ساخت دایرکتوری جدید
mkdir my_folder # ساخت یک پوشه
mkdir -p parent/child # ساخت پوشه با زیرپوشههای تو در تو
touch – ایجاد فایل خالی
touch file.txt # ساخت فایل متنی خالی
cp – کپی کردن
cp file.txt backup.txt # کپی فایل
cp -r folder1 folder2 # کپی کامل یک پوشه (با گزینه -r)
mv – انتقال یا تغییر نام
mv file.txt /tmp/ # انتقال فایل به پوشه tmp
mv old_name.txt new_name.txt # تغییر نام فایل
rm – حذف فایلها و پوشهها
rm فایلها را به طور کامل حذف میکند و قابل بازیابی نیستند. با دقت استفاده کنید.
rm file.txt # حذف یک فایل
rm -r folder/ # حذف یک پوشه و همه محتویات آن
rm -f file.txt # حذف اجباری بدون سوال
rmdir – حذف دایرکتوری خالی
rmdir empty_folder # فقط پوشههای خالی را حذف میکند
۳. مشاهده محتوای فایلها
برای دیدن محتوای فایلهای متنی از این دستورات استفاده میکنیم.
cat – نمایش کامل فایل
cat file.txt # کل محتوا را نمایش میدهد
less – نمایش صفحهبهصفحه
برای فایلهای بزرگ، less محتوا را صفحهبهصفحه نشان میدهد. با کلیدهای Space به جلو و b به عقب بروید.
less long_file.log
head و tail – نمایش ابتدا یا انتهای فایل
head -n 20 file.txt # نمایش ۲۰ خط اول
tail -n 10 file.txt # نمایش ۱۰ خط آخر
tail -f logfile.log # دنبال کردن زنده تغییرات فایل (مفید برای لاگها)
۴. مدیریت مجوزها
در لینوکس هر فایل و پوشه دارای مجوزهایی برای خواندن (r)، نوشتن (w) و اجرا (x) است.
chmod – تغییر مجوزها
میتوانید با اعداد (مثل ۷۵۵) یا با حروف (مثل u+x) مجوزها را تغییر دهید:
chmod 755 script.sh # مالک: خواندن، نوشتن، اجرا | گروه و دیگران: خواندن و اجرا
chmod u+x script.sh # افزودن مجوز اجرا برای مالک
chown – تغییر مالک
chown user:group file.txt # تغییر مالک و گروه فایل
۵. اطلاعات سیستم
این دستورات اطلاعات مفیدی درباره سیستم و منابع آن به شما میدهند.
uname -a: نمایش اطلاعات هسته سیستم.df -h: نمایش فضای استفاده شده و خالی دیسکها (به صورت قابل خواندن).du -sh folder/: نمایش حجم کل یک پوشه.free -h: نمایش میزان حافظه RAM و Swap استفاده شده.ps aux: نمایش لیست فرایندهای در حال اجرا.topیاhtop: نمایش منابع سیستم به صورت زنده.
df -h
# Output: Filesystem Size Used Avail Use% Mounted on
# /dev/sda1 100G 30G 70G 30% /
۶. جستجو و فیلتر
grep – جستجوی متن در فایلها
grep یکی از قدرتمندترین ابزارها برای جستجوی الگوهای متنی است:
grep "error" logfile.log # پیدا کردن خطوط حاوی "error"
grep -r "TODO" src/ # جستجوی بازگشتی در همه فایلهای پوشه src
grep -i "warning" file.txt # جستجوی بدون توجه به بزرگ/کوچکی حروف
find – جستجوی فایلها و پوشهها
find /home -name "*.txt" # پیدا کردن همه فایلهای txt در پوشه home
find /var/log -size +10M # پیدا کردن فایلهای بزرگتر از ۱۰ مگابایت
۷. دستورات شبکه
ping google.com: بررسی اتصال به یک سرور.curl https://api.example.com: ارسال درخواست HTTP و دریافت پاسخ.wget https://example.com/file.zip: دانلود فایل از اینترنت.ssh user@server.com: اتصال امن به یک سرور از راه دور.
ping -c 4 8.8.8.8
# ارسال ۴ بسته به سرور DNS گوگل و بررسی پاسخ
۸. فشردهسازی و آرشیو
tar – ایجاد و استخراج آرشیو
tar -czf archive.tar.gz folder/ # فشردهسازی یک پوشه با فرمت gzip
tar -xzf archive.tar.gz # استخراج فایل فشرده
gzip و gunzip
gzip file.txt # فشردهسازی یک فایل (تبدیل به file.txt.gz)
gunzip file.txt.gz # باز کردن فایل فشرده
۹. مدیریت پردازشها
ps aux | grep firefox: پیدا کردن پردازشهای مربوط به Firefox.kill -9 PID: متوقف کردن اجباری یک پردازش با شناسه PID.killall firefox: بستن همه پردازشهای Firefox.bg: ادامه دادن یک پردازش متوقفشده در پسزمینه.fg: آوردن یک پردازش پسزمینه به جلو.
# اجرای یک دستور در پسزمینه
long_running_task &
# مشاهده پردازشهای پسزمینه
jobs
۱۰. دریافت راهنما
man – نمایش دفترچه راهنما
man ls # نمایش راهنمای کامل دستور ls
--help – راهنمای سریع
اکثر دستورات با گزینه --help توضیح مختصری از خود نشان میدهند:
ls --help
جمعبندی و گامهای بعدی
در این مقاله با مهمترین دستورات لینوکس آشنا شدید. حالا میتوانید در محیط ترمینال کارهای روزمره را انجام دهید. برای پیشرفت بیشتر:
- هر روز چند دستور جدید را تمرین کنید و با گزینههای آنها آشنا شوید.
- از
manو--helpبرای یادگیری دستورات جدید استفاده کنید. - کتاب «The Linux Command Line» (ترجمه فارسی در کتابخانه لینوکس) منبع عالی برای عمیقتر شدن است.
- در ترمینال زیاد کار کنید تا دستورات برایتان عادی شوند.