تسلط بر ترمینال لینوکس: یک راهنمای عملی از اصول اولیه به دستورات برق

مقدمه
ترمینال لینوکس فقط برای معدود نخبگان نیست-این یک مهارت است که هر کاربر توسعه دهنده ، سرپرست و فناوری اطلاعات باید درک کند. خط فرمان فراهم می کند دقت ، سرعت و کنترلبشر این می تواند وظایف را خودکار کند ، مشکلات را برطرف کند و سیستم ها را مدیریت کند – همه با چند کلید.
در این مقاله ، ما کاوش خواهیم کرد دستورات لینوکس به روشی عملی و آسان برای درک-شروع از اصول اولیه و به تدریج غواصی به داخل دستورات سیستم قدرتمندتربشر
1. حرکت در سیستم فایل لینوکس
یکی از اولین کارهایی که در یک ترمینال لینوکس انجام می دهید ، حرکت در سیستم فایل است.
فرمان | شرح | نمونه | خروجی |
---|---|---|---|
pwd |
مسیر فهرست فعلی شما را نشان می دهد | pwd |
/home/user/Documents |
ls |
پرونده ها و پوشه ها را در یک فهرست لیست می کند | ls -l |
اندازه پرونده ، صاحبان ، تاریخ را نشان می دهد |
cd |
فهرست فعلی را تغییر می دهد | cd /etc |
حرکت می کند به /etc پوشه |
نمونه
این دنباله از تصویر بالا ، بیشتر ناوبری ترمینال اصلی لینوکس را نشان می دهد. این کار با لیست محتوای فهرست فعلی با استفاده از شروع می شود ls
، سپس به داخل dir1
دایرکتوری با cd dir1
بشر درون dir1
، ls
دوباره از دستور برای مشاهده محتوای آن استفاده می شود. در pwd
Command مسیر کامل دایرکتوری فعلی را چاپ می کند ، و محل را تأیید می کند /home/ubuntu/dir1
بشر برای بالا رفتن از یک سطح ، cd ..
استفاده می شود بالاخره ، cd ~
کاربر را به فهرست خانه برگرداند.
2. مدیریت پرونده ها و دایرکتوری ها
لینوکس ابزارهای قدرتمندی برای ایجاد ، تغییر نام ، کپی کردن و حذف پرونده ها و پوشه ها فراهم می کند.
فرمان | شرح | نمونه | نتیجه |
---|---|---|---|
mkdir |
یک دایرکتوری جدید ایجاد کنید | mkdir Projects |
پوشه ای به نام ایجاد می کند پروژه |
touch |
یک پرونده خالی جدید ایجاد کنید | touch file.txt |
ایجاد کردن پرونده |
cp |
کپی کردن پرونده ها یا پوشه ها | cp file.txt backup.txt |
پرونده را کپی می کند |
mv |
پرونده ها را جابجا یا تغییر نام دهید | mv file.txt archive.txt |
file.txt را تغییر نام دهید |
rm |
حذف پرونده ها یا پوشه ها |
rm file.txt rm -r folder/
|
یک پرونده یا پوشه را حذف می کند |
مراقب باشید rm -rf
– این باعث می شود پوشه ها بدون تأیید حذف شوند.
نمونه
از تصویر بالا ، این جلسه ترمینال نحوه مدیریت پرونده ها و دایرکتوری ها در لینوکس ، از جمله نحوه حذف پوشه های غیر خالی را نشان می دهد.
- جلسه با ایجاد دایرکتوری جدید به نام آغاز می شود
folder
با استفاده ازmkdir folder
فرمان - در
ls
سپس از دستور برای تأیید حضور دایرکتوری جدید استفاده می شود. - یک پرونده خالی به نام
file
باtouch file
وتls
تأیید می کند که در فهرست فعلی وجود دارد. - پرونده
file
سپس به داخل منتقل می شودfolder
دایرکتوری با استفاده ازmv file folder
بشر - کاربر به داخل حرکت می کند
folder
دایرکتوری با استفاده ازcd folder
وتls
تأیید می کند کهfile
با موفقیت جابجا شده است. - پرونده با استفاده از
rm file
فرمان -
ls
دوباره اجرا می شود تا تأیید کند که پوشه اکنون خالی است. - کاربر با استفاده از فهرست والدین باز می گردد
cd ..
و محتوای فعلی را با تأیید می کندls
بشر
در این مرحله ، کاربر سعی می کند موارد را حذف کند folder
دایرکتوری با استفاده از rm folder
، اما این منجر به یک پیام خطا می شود:
rm: cannot remove 'folder': Is a directory
این اتفاق می افتد زیرا rm
به خودی خود فقط می تواند پرونده ها را حذف کند ، نه دایرکتوری ها.
- برای حل این مسئله ، کاربر اجرا می شود
rm -r folder
، که به صورت بازگشتی دایرکتوری و هر محتوایی را که ممکن است حاوی آن باشد حذف می کند (حتی اگر در این حالت خالی باشد). - یک فینال
ls
تأیید می کند کهfolder
با موفقیت حذف شده است و فقط دایرکتوری ها و پرونده های اصلی را ترک می کند.
این سکانس تفاوتهای مهم بین حذف پرونده ها را برجسته می کند (rm
) و دایرکتوری ها (rm -r
) به همراه مدیریت پرونده استاندارد و پوشه در خط فرمان لینوکس.
3. مشاهده و ویرایش پرونده ها
قبل از ویرایش پرونده ها ، اغلب می خواهید آنها را مشاهده کنید ، به خصوص پرونده های ورود به سیستم یا تنظیمات پیکربندی.
فرمان | شرح | نمونه |
---|---|---|
cat |
محتوای پرونده را نشان می دهد | cat notes.txt |
less / more
|
پرونده ها را به طور همزمان باز می کند | less syslog |
head / tail
|
شروع یا پایان یک پرونده را نشان می دهد | tail -n 20 error.log |
vim |
یک ویرایشگر فایل ساده را باز می کند | vim file.txt |
از مورد استفاده کنید:
وقتی عیب یابی می کنید ، tail -f /var/log/syslog
به شما در تماشای سیاهههای مربوط به سیستم در زمان واقعی کمک می کند.
4. جستجو و یافتن
لینوکس جستجوی پرونده ها و محتوا را با استفاده از آن آسان می کند find
وت grep
بشر
فرمان | شرح | نمونه |
---|---|---|
find |
پرونده ها/پوشه ها را پیدا می کند | find /home -name "*.pdf" |
grep |
جستجو در داخل پرونده ها | grep "error" server.log |
grep -r |
به صورت بازگشتی در پوشه ها جستجو کنید | grep -r "port" /etc/nginx |
از مورد استفاده کنید:
شما در حال بررسی یک پوشه پیکربندی هستید تا پیدا کنید که کدام پرونده شامل یک کلمه کلیدی خاص است.
نمونه
تصویر بالا یک گردش کار معمولی ترمینال لینوکس برای کار با پرونده های متنی را نشان می دهد. با ایجاد یک فایل با استفاده شروع می شود vim sample.txt
بشر در داخل ویرایشگر VIM ، با فشار دادن حالت درج را وارد می کنید i
، که به شما امکان می دهد متن خود را تایپ کنید ، و سپس با فشار دادن ذخیره و خروج می شود Esc
، به دنبال آن Shift + esc + ;
، تایپ کردن wq
، و ضربه زدن Enter
بشر این فرآیند هنگام کار مستقیم در ترمینال بدون تکیه بر ویرایشگر متن گرافیکی مفید است.
برای بررسی سریع ساختار فایل ، کاربر اجرا می شود head -n 1 sample.txt
وت tail -n 1 sample.txt
برای مشاهده خطوط اول و آخر پرونده. این دستورات هنگام برخورد با پرونده های بزرگ که در آن پیمایش کل مطالب عملی نیست ، مفید هستند –head
وت tail
به شما امکان می دهد قالب بندی پرونده ، هدرها یا خطوط خلاصه را با یک نگاه تأیید کنید.
سپس کاربر از آن استفاده می کند find *.txt
برای شناسایی همه .txt
پرونده ها در فهرست فعلی و اجرا می شود grep error sample.txt
برای جستجوی یک کلمه کلیدی خاص در داخل پرونده. پس از یافتن پرونده و تأیید محتوای آن ، با آن حذف می شود rm sample.txt
وت ls
برای تأیید حذف استفاده می شود. بالاخره ، cat text.txt
محتویات فایل متنی دیگر را نشان می دهد. درمجموع ، این جریان نشان دهنده ایجاد فایل ضروری ، بازرسی ، جستجو و پاکسازی در یک محیط لینوکس است.
5. مجوزهای کاربر و کنترل دسترسی
هر پرونده و دستور در مورد چه کسی می تواند آن را بخواند ، بنویسد یا اجرا کندبشر لینوکس برای مدیریت این کار از مجوزها و مالکیت استفاده می کند.
فرمان | شرح | نمونه | چه کاری انجام می دهد |
---|---|---|---|
chmod |
تغییر مجوزها | chmod 755 script.sh |
مالک می تواند بخواند/بنویسد/اجرا شود. دیگران می توانند بخوانند و اجرا کنند |
chown |
تغییر مالکیت | chown user:group file.txt |
پرونده ای را به کاربر دیگری اختصاص می دهد |
ls -l |
مشاهده مجوزها | ls -l |
رشته های مجوز مانند -rw-r--r--
|
6. اجرای دستورات به عنوان مدیر (sudo
)
برخی از اقدامات – مانند نصب نرم افزار یا ویرایش پیکربندی های سیستم – به امتیازات بالایی نیاز دارند.
فرمان | شرح | نمونه |
---|---|---|
sudo |
یک فرمان را به عنوان Superuser اجرا کنید | sudo apt update |
sudo su |
سوئیچ به ریشه (superuser) | sudo su |
whoami |
کاربر فعلی خود را ببینید | whoami |
توضیح:
-
sudo
مخفف “Superuser Do” است. - قبل از اجرای دستور از شما خواسته می شود.
از مورد استفاده کنید:
نصب یا به روزرسانی نرم افزار:
sudo apt install nginx
7. نظارت بر سیستم و مدیریت فرآیند
برای سالم نگه داشتن سیستم خود ، باید حافظه ، پردازنده ، دیسک و فرآیندها را بررسی کنید.
فرمان | شرح | نمونه |
---|---|---|
top |
نمای زنده از CPU/استفاده از حافظه | top |
htop |
نسخه بصری بهتری از بالا | htop |
ps aux |
تمام فرآیندهای در حال اجرا را لیست کنید | ps aux |
kill / pkill
|
یک فرآیند توسط PID یا نام را پایان دهید |
kill 1234 با pkill firefox
|
df -h |
استفاده از فضای دیسک | df -h |
du -sh |
خلاصه اندازه پوشه | du -sh Downloads |
🔧 از مورد استفاده کنید
یک فرآیند یخ زده است. PID (شناسه فرآیند) خود را پیدا کنید ps aux
، سپس آن را پایان دهید:
kill 5423
8. کار با شبکه ها
لینوکس تست اتصال و مدیریت تنظیمات شبکه را آسان می کند.
فرمان | شرح | نمونه |
---|---|---|
ping |
اتصال شبکه تست | ping google.com |
curl |
یک وب سایت یا API را بررسی کنید | curl -I https://example.com |
wget |
بارگیری پرونده ها از اینترنت | wget https://example.com/file.zip |
ss |
درگاه ها و خدمات باز را بررسی کنید | ss -tuln |
🔧 از مورد استفاده کنید:
اگر نمی توانید به برنامه وب خود دسترسی پیدا کنید. استفاده کردن ping
با curl
وت ss
برای بررسی اینکه آیا سرور به پایان رسیده است ، سایت قابل دسترسی است و درگاه باز است.
9. تغییرات و پیشرفت های فرمان
حتی دستورات آشنا دارای تغییرات قدرتمندی هستند که می توانند بهره وری را به میزان قابل توجهی بهبود بخشند:
فرمان | تنوع | هدف |
---|---|---|
ls -lh |
اندازه های قابل خواندن انسان | خواندن اندازه پرونده ها را آسان تر می کند (به عنوان مثال ، MB/GB) |
rm -rf |
زور حذف بازگشتی | پوشه ها و محتویات را بدون ارسال حذف می کند |
cp -u |
کپی فقط به روزرسانی | پرونده ها را فقط در صورت جدیدتر بودن منبع کپی کنید |
grep -i |
جستجوی بی حد و حصر | بدون توجه به مورد ، مسابقات را پیدا می کند |
find -mtime +30 |
پرونده های قدیمی را پیدا کنید | فایلهای اصلاح شده بیش از 30 روز پیش را پیدا می کند |
🔧 از مورد استفاده کنید:
کار: همه را پیدا و حذف کنید .log
پرونده های قدیمی تر از 7 روز.
find /var/log -type f -name "*.log" -mtime +7 -exec rm -f {} \;
توضیح:
-
find /var/log
: شروع به جستجو در/var/log
فهرست راهنما -
-type f
: جستجو را محدود می کند فقط پرونده ها -
-name "*.log"
: پرونده هایی که به پایان می رسند مطابقت دارد.log
-
-mtime +7
: فایلهای فیلتر اصلاح شده بیش از 7 روز پیش -
-exec rm -f {} \;
: برای هر پرونده تطبیق ، اجرا می کندrm -f
فرمان برای حذف آن-
{}
با نام پرونده فعلی جایگزین می شود -
-f
حذف نیروها بدون درخواست -
\;
به پایان می رسد-exec
Command (Backslash از قسمت اصلی پوسته فرار می کند)
-
احتیاط:
این دستور به طور دائم پرونده ها را حذف می کندبشر همیشه بررسی کنید که چه چیزی با یک اجرای خشک مانند این تحت تأثیر قرار خواهد گرفت:
find /var/log -type f -name "*.log" -mtime +7
تسلط بر خط فرمان لینوکس فقط مربوط به تایپ کردن دستورالعمل ها نیست – این در مورد است درک نحوه عملکرد سیستم شمابشر از پیمایش و سازماندهی پرونده ها گرفته تا مدیریت مجوزها و اتوماسیون وظایف ، هر دستور ابزاری در جعبه ابزار شماست.
کلید این است عملبشر اغلب از این دستورات استفاده کنید ، گزینه های آنها را کشف کنید و با خیال راحت آزمایش کنید. با گذشت زمان ، ترمینال فقط قدرتمند بلکه ماهیت دوم می شود.