لینوکس یک سیستمعامل قدرتمند و متنباز است که به دلیل انعطافپذیری و کارایی بالا در بین برنامهنویسان، مدیران سیستمها و کاربران حرفهای محبوبیت زیادی دارد. یکی از ویژگیهای کلیدی لینوکس، استفاده از دستورات متنی در محیط ترمینال است. در این مقاله، دستورات پرکاربرد لینوکس را بر اساس دستهبندیهای مختلف بررسی میکنیم.
شروع یادگیری دستورات پرکاربرد لینوکس
شروع یادگیری دستورات لینوکس میتواند به نظر چالشبرانگیز بیاید، اما با شناخت چند نکته ساده و کاربردی، میتوانید به سرعت وارد دنیای لینوکس شوید.
- حروف کوچک و بزرگ مهم هستند: در لینوکس، حروف کوچک و بزرگ کاملاً متفاوت هستند؛ برای مثال، Class با class فرق دارد. پس دقت کنید!
- فایلهای مخفی با نقطه: اگر فایلی با نقطه (.) شروع شود، لینوکس آن را به عنوان فایل مخفی میشناسد. این یک ترفند ساده ولی کاربردی است.
- به جای فاصله از زیرخط (_) استفاده کنید: در نامگذاری فایلها و پوشهها، به جای فاصله از زیرخط (_) استفاده کنید تا به مشکل نخورید.
- پسوند فایلها اهمیتی ندارد: در لینوکس، پسوند فایلها تعیینکننده نوع فایل نیست، بنابراین نگران پسوندها نباشید. هر فایلی را میتوانید بدون توجه به پسوندش استفاده کنید.
مطلب مرتبط: لینوکس چیست؟ آشنایی با سیستم عامل لینوکس
این نکات ساده را در نظر داشته باشید تا کار با لینوکس برایتان راحتتر شود!
بیایید با دستورات ساده شروع کنیم!
یادگیری لینوکس ممکن است در ابتدا کمی ترسناک به نظر برسد، اما نگران نباشید. با شروع از دستورات پایه و ساده، خیلی زود به این محیط جدید عادت خواهید کرد. این دستورات به شما کمک میکنند تا اولین قدمها را محکم بردارید و اعتماد به نفستان را در کار با ترمینال بالا ببرید. پس بیایید بدون نگرانی شروع کنیم و کمکم پیشرفت کنیم!
1. مدیریت فایلها و دایرکتوریها
این دسته از دستورات برای انجام عملیات مختلف بر روی فایلها و دایرکتوریها استفاده میشوند.
ls
دستور ls مثل “فهرست کتابها” در یک کتابخانه است.
فهرست کتابها در یک کتابخانه به شما کمک میکند تا بفهمید چه کتابهایی در قفسههای مختلف وجود دارد و اطلاعاتی درباره هر کتاب (مثل نویسنده، سال انتشار) را مشاهده کنید، دستور ls نیز برای لیست کردن محتویات دایرکتوری استفاده میشود.
بطور مثال:
اگر میخواهید نتایج به صورت مرتب به همراه اطلاعات اضافه هر پرونده یا پوشه نمایش داده شود، باید از دستور ls -lh استفاده کنید. این دستور نتیجه را به صورت زیر بر خواهد گرداند.
pwd
برای اینکه مشاهده کنید که در حال حاضر در چه مسیری هستید از pwd استفاده کنید.
cd
دستور cd مثل “عوض کردن مسیر در یک مسیر پیادهروی” است.
تصور کنید که در یک پارک پیادهروی میکنید و میخواهید مسیر خود را تغییر دهید تا به مسیر دیگری بروید. دستور cd به شما این امکان را میدهد تا مسیر (دایرکتوری) خود را تغییر دهید.
بعنوان مثال برای اینکه به دایرکتوری etc بروید، دستور cd را بصورت زیر اجرا کنید:
cp
از دستور cp برای کپی کردن فایلها و دایرکتوریها استفاده کنید.
مثال:
اگر شما یک فایل به نام Sample دارید و میخواهید از آن یک کپی به نام Sample-Copy بسازید، از دستور زیر استفاده میکنید:
ویا برای اینکه یک کپی از دایرکتوری demo بههمراه کلیه فایل های زیرمجموعهاش تهیه کنید، دستور cp را بههمراه سوئیچ R اجرا کنید:
mv
برای انتقال یا تغییر نام فایلها و دایرکتوریها از دستور mv استفاده کنید.
مثلاً جابجایی file.txt به دایرکتوری Documents:
/mv file.txt Documents
و یا برای مثال جهت تغییر نام یک فایل از oldname.txt به newname.txt:
mv oldname.txt newname.txt
rm
جهت حذف فایلها و دایرکتوریها از دستور rm استفاده کنید.
rm file_name
بجای file_name نام فایل یا دایرکتوری مورد نظرتان را بنویسید.
mkdir
از دستور mkdir برای ایجاد یک دایرکتوری جدید استفاده کنید
mkdir new_directory
بجای new_directory نام دایرکتوری مورد نظرتان را درج کنید.
2. مدیریت کاربران و دسترسیها
در لینوکس بیشتر از یک کاربر، بطور همزمان امکان استفاده از کامپیوتر را دارند. در ادامه با دستوراتی که
برای مدیریت کاربران سیستم و تعیین سطح دسترسی آنها استفاده میشوند، آشنا میشویم.
sudo
دستور sudo در لینوکس مثل “نماینده حاکم بزرگ” در کارتون سفرهای میتیکومان است که به شما اجازه میدهد با مجوزهای ویژه، دستورات خاص را اجرا کنید.
دستور sudo به شما این امکان را میدهد که دستورات را با مجوزهای مدیریتی اجرا کنید، بهطور موقت اختیارات ویژه کاربر ریشه (root) را دریافت کنید. بطور مثال بتوانید نرم افزاری را نصب کنید.
sudo command
بجای command نام دستور مورد نظرتان را درج کنید.
su
دستور su مانند یک نقاب است که به شما اجازه میدهد بهطور موقت هویت کاربر دیگری را داشته باشید.
su به شما این امکان را میدهد که به یک کاربر دیگر، بهویژه کاربر ریشه (root)، سوییچ کنید و دستورات را با مجوزهای آن کاربر اجرا کنید.
su user
بجای user نام کاربر مورد نظرتان را درج کنید، اگر su را بدون هیچی یوزری وارد کنید، بصورت پیش فرض root در نظر گرفته می شود.
بعد از اجرای دستور نیاز است رمز عبور یوزر مورد نظر را وارد کنید و پس از آن دسترسی شما مطابق با همان user خواهد شد.
chmod
جهت تغییر مجوزهای دسترسی به فایلها و دایرکتوریها ازدستور chmod استفاده کنید.
chmod 755 file_name
بجای file_name نام فایل یا دایرکتوری مورد نظرتان را درج کنید و بجای 755 سطح دسترسی مورد نیاز را جایگزین کنید.
سطح دسترسی 755 در مثال فوق به مالک فایل اجازه میدهد تا فایل را بخواند، بنویسد و اجرا کند، در حالی که گروه و سایر کاربران تنها میتوانند فایل را بخوانند و اجرا کنند.
chown
برای اینکه مشخص کنید که یک پوشه یا پرونده متعلق به چه کاربر یا گروهی از گروههای سرور لینوکس است. از دستور chown به شکل زیر استفاده کنید.
chown apache:apache public_html
این دستور پوشۀ public_html را متعلق به کاربر و گروه apache میکند.
Passwd
جهت تغییر رمز عبور کاربران از دستور passwd استفاده کنید.
passwd username
بجای username نام کاربر مورد نظرتان را درج کنید.
اگر دستور passwd را بدون هیچ یوزری وارد کنید، رمز root را می توانید، تغییر دهید.
بیشتر بخوانید: آموزش تغییر پسورد لینوکس (دستور passwd)
useradd
برای اضافه کردن کاربر جدید به سیستم از useradd می توانید استفاده کنید:
useradd new_user
بجای new_user نام کاربر جدید را درج کنید.
deluser و userdel:
جهت حذف کاربر از سیستم دستور زیر را اجرا کنید:
deluser user_name
بجای user_name نام کاربری که می خواهید حذف شود، را درج کنید.
3. مدیریت فرآیندها
این دسته از دستورات برای مشاهده و کنترل فرآیندهای در حال اجرا در سیستم استفاده میشوند.
ps
فرآیندهای در حال اجرا را نمایش میدهد.
ps aux
top
Top پردازش های در حال اجرا، منابع سیستم از جمله CPU و RAM و مجموع برنامه های در حال اجرا را نشان می دهد.
kill
دستور kill برای متوقف کردن فرآیند در حال اجرا در لینوکس استفاده می شود.
بطور مثال ما فرآیند vsftpd را با کمک آیدی فرآیندش بصورت زیر می توانیم متوقف کنیم:
kill -9 17702
4. مدیریت شبکه
این دستورات برای پیکربندی و مدیریت شبکههای کامپیوتری استفاده میشوند.
Ifconfig
دستور ifconfig در لینوکس برای نمایش و پیکربندی شبکه، مانند آدرسهای IP و وضعیت کارت شبکه، استفاده میشود. برای مثال، اجرای دستور زیر وضعیت شبکه و آدرس IP را نمایش میدهد:
ifconfig
ping
دستور ping در لینوکس برای بررسی ارتباط شبکهای و سنجش تاخیر بین سیستم شما و یک سیستم دیگر در شبکه یا اینترنت استفاده میشود.
مثال:
ping google.com
netstat
دستور netstat اطلاعات مربوط به اتصالات شبکه و پورتهای باز را نمایش میدهد.
netstat -tuln
ssh
برای اتصال به یک سیستم از راه دور با استفاده از پروتکل SSH، از دستور زیر استفاده کنید:
ssh user@remote_host
در دستور فوق User نام کاربری که میخواهید با آن به سیستم از راه دور وارد شوید و remote_host آدرس IP یا نام دامنه سیستم هدف که میخواهید به آن متصل شوید.
اگر می خواهید در باره پروتکل SSH اطلاعاتی بیشتری کسب کنید پیشنهاد میکنم حتما به مقاله پروتکل SSH چیست؟ در وبلاگ ایرانسرور سری بزنید.
صحبت از یک پروتکل اینترنتی است که احتمال خطر را بسیار پایین میآورد. پروتکلی که بهخاطر رمزنگاریها و احراز هویتهایی که طلب میکند، امنیت بسیار بالایی دارد.
wget
اگر بخواهید فایلی را در سیستم دانلود کنید، از دستور wget می توانید استفاده کنید.
مثال:
wget http://example.com/file.zip
5. ابزارهای جستجو و فیلتر
این دستورات برای جستجو و فیلتر کردن محتویات فایلها و خروجی دستورات استفاده میشوند.
grep
جهت جستجوی یک متن خاص در یک فایل از دستور grep استفاده کنید.
grep "pattern" file_name
دردستور فوق Pattern عبارت مورد نظری است که می خواهید آن را سرچ کنید و File_name نیز نام فایلی است که قرار است در آن سرچ انجام شود.
find
با استفاده از دستور find به راحتی می توانید فیلتر ها و پارامترهای خاصی را اعمال کنید و به طور دقیق و واضح به فایل های مورد نظر خود در لینوکس دسترسی پیدا کنید.
find [path] [options] [expression]
در دستور فوق Path مسیر دایرکتوری مورد نظر برای جستجوی فایل، options پارامترهای شرطی لازم برای تعریف فیلتر مثل اسم، نوع و مجوز و expression اقدامات مورد نظر برای فایل های مدنظر می باشد.
مثال:
find / -name ".mp3"
با اجرای دستور فوق کلیه فایل های mp3 موجود در مسیر / و زیرمجموعه های آن جستجو و نمایش داده میشود. دستور find در لینوکس امکانات فوقالعادهای برای جستجو و مدیریت فایلها دارد، برای اینکه بیشتر با این دستور و گزینههاش آشنا شوید، میتوانید به مقاله دستور find در لینوکس سر بزنید
Sed
با استفاده از دستور sed، میتوانید به راحتی یک عبارت را در یک فایل با عبارت دیگری جایگزین کنید. برای این کار از الگوی زیر استفاده کنید:
sed 's/old_text/new_text/g' file_name
برای مثال، اگر بخواهید در فایلی، آدرس IP قدیمی را به IP جدید تغییر دهید، میتوانید از دستور زیر استفاده کنید:
sed 's/185.100.25.180/94.73.145.191/g' /var/log/log.txt
این دستور تمامی موارد آدرس IP قدیمی را در فایل log.txt با آدرس IP جدید جایگزین خواهد کرد.
در ادامه، به طور خلاصه به معرفی سایر دستورات کاربردی لینوکس خواهیم پرداخت.
6. فشردهسازی و پشتیبانگیری
این دستورات برای فشردهسازی و استخراج فایلها و پشتیبانگیری از دادهها استفاده میشوند.
tar
فشردهسازی و استخراج فایلهای آرشیو
tar -czvf archive_name.tar.gz directory_name
zip
فشرده سازی فایل ها با فرمت zip
مثال:
zip archive_name.zip file_name
unzip
استخراج فایلها با فرمت zip
unzip archive_name.zip
7. دستورات سیستم
این دسته شامل دستورات عمومی برای مشاهده اطلاعات سیستم و انجام عملیاتهای سیستمی است.
uname
نمایش اطلاعات مربوط به سیستمعامل.
uname -a
df
نمایش اطلاعات مربوط به فضای دیسک
df -h
du
نمایش حجم استفادهشده توسط فایلها و دایرکتوریها
du -sh directory_name
uptime
نمایش مدت زمان اجرای سیستم از زمان آخرین راهاندازی
uptime
free
نمایش اطلاعات مربوط به حافظه RAM
free -h
1. تکمیل خودکار دستورات با Tab
حتماً برایتان پیش آمده که بخواهید نام یک فایل یا دایرکتوری طولانی را تایپ کنید. خب، به جای اینکه همهی آن را دستی وارد کنید، فقط چند حرف اولش را بنویسید و بعد کلید Tab را بزنید. لینوکس خودش بقیهاش را تکمیل میکند.
مثال: فرض کنید میخواهید وارد پوشه Documents شوید:
cd /ho[Tab]us[Tab]Do[Tab]
با زدن چند بار Tab، ترمینال نام پوشهها را کامل میکند و دیگر نیازی نیست تا آخرش تایپ کنید!
2. استفاده از دستور history برای دستورات قبلی
گاهی ممکن است نیاز داشته باشید دستوری که قبلاً وارد کردهاید را دوباره اجرا کنید. به جای اینکه آن را از اول تایپ کنید، از دستور history کمک بگیرید. این دستور، لیستی از دستورات قبلیتان را نشان میدهد و با شمارهگذاری آنها، میتوانید به راحتی دوباره اجرا کنید.
مثال:
!123
این کار، دستور شماره 123 را از لیست history دوباره اجرا میکند.
3. تعریف آلیاسها (Aliases)
اگر یک دستور را خیلی تکرار میکنید، بهتر است برای آن یک آلیاس تعریف کنید. با این کار، به جای تایپ دستور طولانی، با یک کلمهی ساده میتوانید همان کار را انجام دهید.
مثال:
alias ll='ls -la'
از این به بعد، با تایپ ll، همان دستور ls -la اجرا میشود.
4. اجرای چند دستور پشت سر هم با نقطهویرگول
شاید بخواهید چندین دستور را یکی پس از دیگری اجرا کنید. به جای این که هر کدام را جداگانه وارد کنید، میتوانید با گذاشتن نقطهویرگول ; بین آنها، همه را در یک خط بنویسید و با یک بار اینتر، همه را اجرا کنید.
مثال:
cd /home/username/Documents; ls; pwd
با این دستور، ابتدا وارد پوشه Documents میشوید، بعد محتویاتش را میبینید و در نهایت مسیر فعلی را نمایش میدهید.
5. جستجوی سریع دستورات با Ctrl + R
اگر دنبال دستوری هستید که قبلاً وارد کردهاید و نمیخواهید دوباره تایپش کنید، ترکیب کلیدهای Ctrl + R کارتان را راحت میکند. کافی است این کلیدها را بزنید و چند حرف از دستور مورد نظرتان را تایپ کنید تا لینوکس آن را برایتان پیدا کند.
ماهیگیری یاد بگیرید…
برای اینکه با دستورات مختلف و گزینههای متنوع آنها در سیستمعامل لینوکس آشنا شوید، پیشنهاد میکنم از دستور man استفاده کنید. این دستور به شما کمک میکند تا اطلاعات جامع و دقیقی در مورد هر دستور به دست آورید.
man command_name
به عنوان مثال، اگر بخواهید با دستور ls و گزینههای آن آشنا شوید، کافی است در ترمینال دستور زیر را وارد کنید:
man ls
با اجرای این دستور، صفحهای حاوی توضیحات کامل در مورد دستور ls به نمایش درمیآید که شامل نحوه استفاده، گزینهها و پارامترهای مختلف آن است. این روش به شما امکان میدهد تا به طور مؤثری با دستورات مختلف و عملکرد آنها آشنا شوید.
سوالاتی که شما می پرسید
1. در لینوکس چگونه میتوان یک فایل را ویرایش کرد؟
در لینوکس جهت ویرایش فایل می توانید از دستور nano ، vi یا vim استفاده کنید.
بعنوان مثال: vi filename
2. در لینوکس چگونه میتوان فرآیندهای در حال اجرا را مشاهده کرد؟
بدین منظور از دستور top و یا ps -aux استفاده کنید.
3. در لینوکس چگونه میتوان حجم یا فضای اشغال شده توسط فایلها و دایرکتوریها را مشاهده کرد؟
از du -sh برای مشاهده حجم دایرکتوری و از df -h برای بررسی فضای دیسک استفاده کنید.
1 دیدگاه. دیدگاه تازه ای بنویسید
داداچ مقاله ی خوبیه فقط تگ های اچ تی ام الت هم همراه با کامندا افتادن یکاریشون بکن