دستورات لینوکس

یکی از بهترین سیستم عامل ها و پلتفرم‌های پرکاربرد لینوکس است که دستورهای متعدد آن در محیط ترمینال سبب می‌شوند تا با سرعت بیشتری از ابزارها و امکانات لینوکس بهره مند شویم. تعدد دستور‌های لینوکس برای استفاده در محیط ترمینال، بسیار زیاد هستند و ما در این مقاله سعی نمودیم تا مهمترین و کاربردی ترین دستورات ترمینال لینوکس را از منابع مختلف جمع آوری نماییم. امیدواریم که برای شما مفید واقع شود.

آنچه میخوانید:
  1. ارتباط با سرور لینوکس
  2. ارتباط با سرور از طریق کامپیوترهای دیگر در شبکه
  3. ارتباط بدون کابل سرور لینوکس با روتر
  4. نصب وب سرور
  5. دسترسی به وب سرور
  6. 42. دستور پینگ در لینوکس
  7. جدول مجوز دستورات لینوکس
  8. 69. دستور chown تغییر مالکیت فایل
  9. mv .70
  10. 71. یافتن یک فایل خاص در داخل دایرکتوری find
  11. فرمت هگزا دسیمال
  12.  فرمت کاراکتر اسکی
  13. 72. دستور diff
  14. 73. دستور file
  15. 74. rm
  16. cp .75
  17. 76. locate 
  18. 77. دستور nano
  19. نصب nano
  20. 79. ایجاد فایل
  21. جستجو و جایگزینی متن
  22. دستور vim
  23. دستور sudo
  24. خاموش کردن سیستم
  25. اضافه کردن کاربر جدید
  26. فرمان‌های کاربردی
  27. فرمان‌های سرور
  28. فرمان‌های ارتباط
  29. فرمان‌های دایرکتوری
  30. فرمان‌های سیناپس
  31. نصب فایرفاکس
  32. نصب و حذف مرورگر گوگل کروم

آنچه در این مطلب میخوانید:

ارتباط با سرور لینوکس

ارتباط با سرور از طریق کامپیوترهای دیگر در شبکه

برای ارتباط با سرور لینوکس، چندین راه وجود دارد. از telnet برای لاگین و یا از FTP برای انتقال فایل استفاده می‌کنند اما موردی که امنیت بالایی داشته باشد SSH نام دارد. به کمک SSH شما میتوانید از طریق یک شبکه ناامن، ارتباط امن برقرار کنید. شما به ترمینال سرور خود دسترسی خواهید داشت.

نصب SSH روی سرور راحت است. ما SSH Server را روی لینوکس سرور خود نصب میکنیم و پس از آن توسط یک SSH Client مثل putty در ویندوز خود استفاده کنیم که بتوانیم از طریق آن به سرور وصل شویم.

(فرض بر این است که سیستم دیگر شما ویندوزی است، اگر روی آن سیستم هم لینوکس داشته باشید از طریق ترمینال این ارتباط قابل برقرار شدن است)

1- لینوکس سرور خود را آپ دیت نمایید.

sudo apt-get update

دستور sudo : معرفی کاربر دستور دهنده است و به معنای آن است که کار قابل انجام را super user انجام میدهد (super user do)

دستور apt-get : مخفف advanced package tool است که یک اینترفیس برای کار با کتابخانه ها است. به کمک این دستور کتابخانه های لازم، از طریق اینترنت قابل دریافت هستند.

دستور update : به روزرسانی لیست پکیج های موجود در لینوکس و دریافت اطلاعات مربوط به نسخه جدید آنها. ( فقط لیست های پکیج ها به روز رسانی میشود)

2- دستور upgrade

با دستور آپگرید نسخه جدید پکیج ها نصب میشوند.

sudo apt-get upgrade

در حقیقت بعد از آپدیت کردن لیست پکیج ها، پکیج منیجر از آپدیت های موجود مطلع میشود و با دستور آپگرید این آپدیت ها انجام میشوند.

3- دستور نصب openssh

sudo apt-get install openssh-server

با نصب پکبج فوق ssh server نصب می‌شود، حالا باید کانفیگ سرور را انجام داد.

4- همچنین MaxAuthorize 4 اضافه میکنیم.(اگر وجود ندارد)

با دستور زیر فایل کانفیگ را باز میکنیم و مطمئن میشویم Port 22 کامنت نباشد (خطوطی که ابتدای آنها # است کامنت هستند).

sudo nano /etc/ssh/ssh_config

5- بررسی وضعیت سرور

sudo service ssh status

6- دستور فعال و غیرفعال کردن ssh server

sudo service ssh start
sudo service ssh stop
7- به کمک دستور زیر از آی پی سرور لینوکس مطلع میشویم.
ifconfig

آی پی خود را یادداشت میکنیم. (در ادامه اتصال به شکل wifi توضیح داده خواهد شد)

در سمت ویندوز(جایی که میخواهیم از آن به سرور لینوکس وصل شویم)، نرم افزار putty را از اینجا دانلود و نصب می‌کنیم.

با کلیک روی open باید یک پنجره ترمینالی باز شود که یوزر و پسورد لینوکس را از ما میخواهد و خط فرمان آماده دستورات شماست!

اگر ارتباط برقرار نشد و مثلا خطای connection timeout در putty دیدیم، بهتر است از طریق ping ارتباط سیستم ویندوزی به عنوان کلاینت را با سرور لینوکسی چک کنیم. همچنین برعکس این ارتباط را از طریق ping در سرور لینوکسی چک کنیم. در سرور ویندوزی برای فهمیدن آی پی از دستور ipconfig باید استفاده کرد. (به جای ifconfig).

8- ping

ping 192.168.1.8

مطمئن شوید روی فایروال ویندزو مشکلی برای پورت 22 نباشد یا محض اطمینان فایروال خود را موقتا قطع کنید.

ارتباط بدون کابل سرور لینوکس با روتر

برای فعال کردن wifi روی سرور لینوکس از طریق ترمینال با سرچ، روش های مختلفی گفته شده است ولی چون حوصله انجام اینکارها را نداریم بهتر است هم برای اینکار و هم برای راحت بودن کار با سرور یک پوسته دسکتاپ برای سرور خود نصب کنیم. دستور زیر را برای نصب دسکتاپ مینویسیم.

9- xubuntu-desktop نصب پوسته دسکتاپ

sudo apt install xubuntu-desktop

اگر مشکل فیلترینگ تحریم را داشتید، دستورالعمل های نصب tor را انجام دهید و دوباره دستور نصب xubuntu-desktop را بنویسید؛ نصب بطور کامل انجام میشود و با بوت کردن سیستم، فضای دسکتاپ را خواهید دید. از بخش setting manager و آیتم software and updates و تب additional drivers درایور wifi خود را نصب کنید.

پس از نصب در بالای دسکتاپ سمت راست، علامت فلش را انتخاب کنید و wifi خود را پیدا کنید و کلمه عبور آن را وارد کنید تا علامت فلش به علامت wifi تبدیل شود. به کمک فایرفاکس میتوانید ارتباط اینترنتی خود را چک کنید.

نصب وب سرور

برای راه اندازی یک وب سایت ساده به وب سرور نیاز داریم.

وب سرورها محلی برای ارائه پاسخ به درخواست های کاربران است. به بیان ساده تر نرم افزاری است که شما با قرار دادن صفحات و فایل های خود در آن اعلام میکنید که دیگران میتوانند با قراردادی خاص از این اطلاعات استفاده کنند.

مثلا با مرورگر خود اگر آدرس example.com/getusers را صدا کنند لیست کاربرانی که در دیتابیس قرار دارند برایشان ارسال میشود. با این تعریف مشخص میشود که به غیر از فایل، امکان ارائه خدمات بر اساس کد را نیز داریم. یعنی کد خاصی را روی سرور قرار میدهیم که با شنیدن درخواست خاص، عملیاتی را انجام دهد و خروجی مورد نظر را برای کاربر ارسال کند.

وب سرور lighttpd

باید سرور لینوکس را به چیزی قابل دسترس از دنیای بیرون تبدیل کنیم. فعلا دنیای بیرون همین سیستم ویندوزی است که به کمک putty به سرور لینوکس متصل است. از putty استفاده میکنیم و دستور زیر را برای نصب یکی از ساده ترین وب سرور ها مینویسیم.(روی لینوکس خود وب سرور lighttpd نصب و اجرا میکنیم)

10- نصب وب سرور lighttpd

sudo apt-get install lighttpd
sudo service lighttpd start

کافیست در سیستم ویندوزی خودتان آدرس آی پی سرور لینوکس را در مرورگر بنویسید. به صورت پیش فرض روی پورت 80 (که نیاز به نوشتن آن نیست) صفحه ای اولیه را خواهید دید:

اما فایل مربوط به این صفحه کجای سرور لینوکس است؟

آدرس /var/www/html را ببینید. این فایل در همین محل قرار دارد. میتوانید فایل را ویرایش کنید و به شکل دلخواهتان تبدیل کنید. (که پرمیشن احتمالا اجازه نمی‌دهد!) مشکل پرمیشن را یا از طریق دستورات ترمینال یا از طریق نصب برنامه nautilus که یک برنامه مدیریت فایل است رفع کنید.

11- نصب nautilus

 sudo apt-get install --reinstall nautilus
12- برای پیدا کردن محل نصب ناتیلوس یا هر برنامه ای از دستور زیر استفاده میکنیم:
whereis nautilus

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

13- اجرای nautilus از طریق ترمینال

nautilus .
  • چگونه مسیر فایل html را عوض کنیم؟
  • چگونه lighttpd را کانفیگ کنیم؟

فایل کانفیگ این وب سرور ساده در مسیر etc/lighttpd/lighttpd.conf قرار دارد. به راحتی به کمک nautilus پنجره مدیریت فایل را در این محل باز میکنیم و این فایل را ادیت میکنیم. مسیر دلخواهی برای وب سایت انتخاب میکنیم که حاوی html خودمان باشد. همچنین امکان تعریف پورت یا فایل های قابل میزبانی را دارید.

هیچ الزامی برای استفاده از lighttpd نیست. شما میتوانید به جای این وب سرور ساده، از apache2 که یک وب سرور اوپن سورس است استفاده کنید.

دسترسی به وب سرور

دسترسی به وب سرور بیرون از شبکه خانگی

معمولا این آی پی روی سیستم های خانگی به شکل داینامیک است. یعنی هر چند وقت عوض میشود. از طریق گوگل با تایپ my ip به آی پی خودتان خواهید رسید.

14- یافتن ip از طریق ترمینال لینوکس

dig @resolver1.opendns.com ANY myip.opendns.com +short

یا از طریق ترمینال ویندوز :

 (Invoke-WebRequest -uri "http://ifconfig.me/ip").Content 

دوست شما با تایپ این آی پی چه چیزی خواهد دید؟ احتمالا هیچ!

قبل از توضیح در مورد اینکه چه اتفاقی افتاده تعاریف زیر را بخوانید :

آدرس ip : هر خانه ای در شهر یک آدرس منحصر به فرد دارد که به محل فیزیکی آن خانه اشاره میکند. کسی که به خانه ما دعوت شده باید این آدرس را داشته باشد. دستگاه های ما نیز باید با همین روش رفتار کنند. یعنی اگر کامپیوتر ما بخواهد از طریق مرورگر به یک کامپیوتر دیگر (سرور) متصل شود باید آدرس آن را بداند. پس اگر تایپ میکنیم google.com در حقیقت این کلمه و پسوندش به یک آدرس ip اشاره میکند که ترکیب چند عدد است.

مفهوم dns : چه چیزی این google.com را به ip آن مپ کرده است؟ DNS server شامل یک دیتابیس بزرگ است که مجوعه ای از دامین ها و IP  های مرتبط را در خود دارد. مثلا دامین google.com به IP با آدرس  ۶۴.۲۳۳.۱۶۷.۹۹ مپ می شود. سرورهای Dns زیادی وجود دارد که معمولا شرکت ها و سازمان های هاستینگ مسئول آن هستند. کافیست دامینی که رزرو کردید و همچنین آدرس ip وب سرور خود را به این شرکت ها بدهید تا آنها به این سرور ها اضافه کنند و چون این سرورهای dns در دنیا به هم متصل هستند ظرف یک یا دو روز سایت شما با تایپ دامین شما قابل دسترس خواهد بود.

برای آنکه ip داینامیک ما به وب سرور مپ شود باید با مفاهیمی مثل port forwarding و virtual host آشنا باشیم. باید تنظیمات مودم خود را دستکاری کنیم و در کل اگر در اینترنت جستجو کنید آموزش های متفاوت و غالبا پیچیده ای خواهید دید.

فرض کنید میخواهیم با گوشی، همیشه سایتمان دسترسی داشته باشیم. دقت کنید آی پی ما داینامیک است و ممکن است بعد از چند ساعت دسترسی به آن ممکن نباشد. اگر مکانیزمی وجود داشت که این آدرس داینامیک را به یک domain مپ میکرد (مثل dns server) ولی حواسش به تغییر ip هم بود و هر بار ip عوض میشد ، ip جدید را به همان دامین مپ میکرد عالی بود.

وب سایت ngrok اینکار را میکند.

برای نصب ngrok از طریق سرور لینوکس خود به آدرس آن رفته و از منوی download روش نصب آن روی سرور را بخوانید و عمل کنید. مثلا روی دسکتاپ آن را قرار دهید و دستور زیر را بنویسید:

15-دستور نصب ngrok

قبل از نوشتن این دستور از فعال بودن وب سرور lighttpd یا هر وب سرور دیگر روی پورت 80 مطمئن شوید.

 ./ngrok http 80

با نوشتن این دستور در ترمینال پیامی مبنی بر موفقیت آمیز بودن بایندینگ نمایش داده میشود و یک آدرس رندم هم برای سایت شما تولید میشود که همان آدرسی است که قرار است به دیگران بدهید!

دستورات کاربردی لینوکس

آشنایی با دستورهای لینوکس کار با این سیستم‌عامل را سهولت می‌بخشد.

استغاده از دستورهای لینوکس در محیط ترمینال سبب می‌شوند تا با سرعت بیشتری از ابزارها و امکانات لینوکس بهره ببرید.

تعداد دستور‌های لینوکس که در سرور می‌توان از آن‌ها استفاده کرد، به‌ مراتب بیشتر از چیزی است که فکر می‌کنید.

21. دستور ls

با استفاده از این دستور، محتویات دایرکتوری مدنظرتان را به‌راحتی می‌توانید فهرست کنید. برای مثال، می‌خواهید ببینید در پوشه عکس‌ها، چند فایل و با چه مشخصاتی وجود دارد و بین آن‌ها به‌دنبال فایل مدنظرتان بگردید.

ls

این دستور گزینه‌های زیادی در اختیارتان قرار می‌دهد به‌همین‌دلیل با استفاده از دستور  help —  می‌توانید تمام دستورات مورد استفاده JS را مشاهده کنید. برای مثال برای رنگی‌کردن خروجی JS امکان استفاده از دستور زیر برایتان فراهم شده است.

ls –color=auto

22. دستور alias

این فرمان برای نمایش گروهی از دستورها و گزینه‌ها و نمایش فهرستی از تمام نام‌هایی است که در سرور تعریف شده است. پس‌از‌آن، aliasهای تعریف‌شده به‌واسطه کاربر را به فایل bashrc./~ می‌توانید اضافه کنید. به‌عنوان‌ مثال، به‌منظور تنظیم ls برای داشتن رنگ، بدون تایپ‌کردن آن می‌توانید از این دستور استفاده کنید:

alias ls=”ls –color=auto”

اگر می‌خواهید امکان مشاهده تمام دستورات aliases ممکن شود، می‌توانید دستور آن را بدون آرگومان اجرا کنید.

alias

آموزش کامل دستور alias در لینوکس را در مقاله‌ی زیر بخوانید.

23. دستور unalias

این دستور همان‌طور‌که از نامش مشخص است، برای حذف نام مستعاری به‌کار می‌رود که از قبل تعریف شده است. برای حذف نام مستعار، می‌توانید از دستور زیر بهره ببرید:

unalias ls

در‌واقع برای حذف آن، می‌توانید LS را در‌مقابل این دستور قرار دهید.

24. دستور pwd

این دستور با عنوان چاپ پوشه و مسیر در‌دسترس و کاری استفاده می‌شود و مخفف چاپ دایرکتوری کاری است. pwd یکی از دستورهای پرکاربرد لینوکس به‌حساب می‌آید که البته در یونیکس نیز به‌کار برده می‌شود. برای مثال، اگر نام کاربری شما ali باشد و در دایرکتوری Doc حضور داشته باشید، مسیر بدین‌صورت اجرا خواهد شد:

/home/john/Documents

دستور آن در ترمینال به‌ترتیب زیر پرینت خواهد شد:

pwd

# My result: /home/kinsta/Documents/linux-commands

25. دستور cd تغییر در دایرکتوری

ورود به دایرکتوری‌ها

دستور cd در سیستم‌عامل لینوکس یکی از دستورهای پرکاربرد و مهمی است که می‌توان بارهاوبارها از آن استفاده کرد. ناگفته نماند مشابه این دستور در سیستم‌عامل ویندوز و در خط فرمان نیز وجود دارد. دستور یادشده معمولاً همراه با ls استفاده می‌شود و به تغییر در دایرکتوری اشاره می‌کند. شما می‌توانید به دایرکتوری دلخواهتان دسترسی داشته باشید و این دستور عملیات سوئیچ را انجام می‌دهد. برای مثال، اگر در پوشه اسناد هستید و می‌خواهید به پوشه ویدئو بروید که از زیرشاخه‌های این بخش است، می‌توانید از این گزینه استفاده کنید:

cd Videos

نمایش مسیر مطلق پوشه را نیز نمایش دهید:

cd /home/kinsta/Documents/Videos

اگر بازهم به این دستور نیاز دارید و می‌خواهید بیشتر درباره آن بدانید، از این ساختارها می‌توانید استفاده کنید:

حالت اول، نمایش پوشه خانگی (Home) است:

cd

انتقال به یک سطح بالاتر:

cd ..

بازگشت به دایرکتوری و مسیر قبلی:

cd –

26. دستور Cp کپی دایرکتوری و فایل

کپی دایرکتوری و فایل

Cp نیز از دیگر دستورهای پراستفاده لینوکس به‌حساب می‌آید که با استفاده از آن، فایل‌ها و دایرکتوری‌ها را در مکان دلخواهتان به‌راحتی می‌توانید کپی کرد. درضمن، اگر به سیستم‌عامل لینوکس نیاز دارید، به‌صورت مرتب با این دستور سروکار خواهید داشت.

کپی‌کردن مستقیم فایل‌ها و پوشه‌ها در ترمینال سیستم‌عامل لینوکس بسیار آسان است و گاهی اوقات می‌تواند جایگزین فایل‌منیجری شود که نمی‌خواهید با آن کار کنید. برای استفاده از این دستور، کافی است که آن را همراه با فایل‌های مبدأ و مقصد تایپ کنید:

cp file_to_copy.txt new_file.txt

افزون‌براین، کل دایرکتوری‌ها را می‌توانید با استفاده از این تگ استفاده کنید:

cp -r dir_to_copy/ new_copy_dir/

27. دستور rm حذف فایل

. برای حذف فایل، می‌توانید از دستور rm استفاده کنید.

rm

توجه:

هنگام استفاده از این دستور دقت کنید؛ زیرا ممکن است سبب ازبین‌رفتن همیشگی فایل‌های سیستمی‌تان شود.

برای حذف فایلی معمولی، بدین‌ترتیب پیش بروید:

rm file_to_copy.txt

درصورتی‌که می‌خواهید دایرکتوری خالی را حذف کنید، می‌توانید از دستور r- استفاده کنید:

rm -r dir_to_remove

برای حذف‌کردن دایرکتوری با محتوای داخل آن، از دستور f- نیز در‌کنار دستور بازگشت باید استفاده کنید:

rm -rf dir_with_content_to_remove/

28. دستور mv جابه‌جا کردن و تغییر نام فایل

دستور mv جابه‌جا کردن و تغییر نام فایل در لینوکس

با استفاده از دستور mv ، فایل‌ها را به راحتی می‌توانید جابه‌جا کنید یا آن‌ها را تغییر نام دهید.

برای استفاده از این دستور، آن را با نام فایل‌های مبدأ و مقصد تایپ کنید:

mv source_file destination_folder/

mv command_list.txt commands/

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

mv /home/kinsta/BestMoviesOfAllTime ./

./ Where دایرکتوری جاری شما است، همچنین با استفاده از دستور mv می‌توانید نام فایل‌های دایرکتوری جاری را تغییر دهید.

mv old_file.txt new_named_file.txt

29. دستور mkdir ایجاد پوشه و دایرکتوری

برای ساخت پوشه در شل، از دستور mkdir می‌توانید استفاده کنید. ناگفته نماند پیش از هر کاری باید نام پوشه جدید را مشخص کنید و مطمئن شوید که از قبل ساخته نشده است و تکراری نیست. برای مثال، این دایرکتوری برای تمام تصاویر است:

mkdir images/

برای ایجاد زیر پوشه نیز، می‌توانید از دستورهای ساده p- استفاده کنید:

mkdir -p movies/PayaFilm.mpeg/

این کار باعث می‌شود که درون پوشه فیلم‌ها پوشه‌ای با عنوان PayaFilm.mpeg ایجاد شود.

30. دستور man راهنمای خط فرمان

یکی دیگر از دستورهای ضروری و مهم لینوکس man است؛ صفحه‌ای که دستور دلخواهتان را به شما آموزش می‌دهد. با واردکردن این دستور، توضیحاتی به شما نمایش داده می‌شود که می‌توانید بر‌اساس آن پیش بروید:

man mkdir

همچنین با استفاده از دستور زیر می توانید به صفحه راهنمای دستی man مراجعه کنید.

man man

31. دستور chmod مدیریت دسترسی‌ها

31. دستور chmod مدیریت دسترسی‌ها در لینوکس

دستور بسیار کاربردی chmod برای مدیریت دسترسی‌ها یا ایجاد و حذف پرمیشن‌ها به‌کار برده می‌شود.

دستور مهم chmod ، امکان خواندن و نوشتن و مدیریت فایل یا پوشه‌ای خاص را به کاربر بدهید یا او را محدود کنید، از این دستور مهم می‌توانید بهره بگیرید.

معمولاً دستور‌های chmod بر پایه موارد زیر است:

  • r (read)
  • w (write
  • x (execute)

یکی از کاربردهای رایج‌ این دستور زمانی است که فایل برای کاربر اجرا شدنی باشد و بتوان این دستور و مجوز را به او الحاق کرد. برای این منظور، می‌توانید از این فرمان استفاده کنید:

chmod +x script

32. دستور exit (خروج از ترمینال)

همان‌طورکه از نام این دستور مشخص است، با عنوان exit شناخته می‌شود. دستور مذکور زمانی به‌کار خواهد رفت که با استفاده از آن قصد دارید ترمینال و ورود به دایرکتوری و پوشه و مسیر را به‌اتمام برسانید. اگر در صفحه خالی ترمینال لینوکس این دستور را وارد کنید، صفحه ترمینال بسته می‌شود:

exit

33. دستور root (سوپر یوزر)

دستور سوپریوزر در لینوکس

احتمالاً برای شما نیز پیش آمده است که خواسته باشید در ترمینال پکیج نرم‌افزاری نصب کنید؛ اما به دسترسی root نیاز داشته باشید. در‌واقع، این دسترسی ادمین لینوکس محسوب می‌شود؛ یعنی کسی که می‌تواند تمامی پردازش‌ها را انجام دهد.

با استفاده از دستور sudo، می‌توانید نرم‌افزار را نصب یا فایل‌های خارج از فهرست دسترسی کاربران را ویرایش کنید:

sudo apt install gimp

sudo cd /root/

ناگفته نماند قبل از اینکه دستور sudo اجرا شود، از شما رمز عبور‌ادمین یا همان root خواسته خواهد شد.

34. دستور shutdown

از این دستور در درجه اول برای خاموش‌کردن مستقیم سیستم در ترمینال لینوکس استفاده می‌شود. بااین‌حال، برای راه‌اندازی مجدد سیستم یا خاموش‌شدن در زمان مقرر نیز می‌توانید از آن استفاده کنید:

shutdown now

برای خاموش‌کردن در ساعتی خاص، از این دستور استفاده کنید:

shutdown 20:40

برای لغوکردن فرایند خاموش‌شدن، می‌توانید با استفاده از دستور c– این کار را انجام دهید:

shutdown -c

35. مدیریت منابع دستگاه

با استفاده از دستوری که در‌ادامه با آن آشنا می‌شوید، بر‌پایه فرایند تعاملی مناسب، دستگاه خود را مستقیماً از ترمینال لینوکس می‌توانید مدیریت کنید. در بیشتر مواقع، دستور مذکور به‌صورت پیش‌فرض بدین‌ترتیب استفاده می‌شود:

htop

36. دستور استخراج فایل فشرده

در بین کاربردی‌ترین دستورهای لینوکس، احتمالاً به خارج‌کردن فایل زیپ از حالت فشرده هم نیاز پیدا خواهید کرد. این کار را می‌توانید بدون نصب نرم‌افزارهای جانبی به‌راحتی انجام دهید. حتی در سیستم‌عامل ویندوز نیز این قابلیت به‌صورت پیش‌فرض وجود دارد:

unzip images.zip

دستور بالا پوشه‌ای که نامش در‌ادامه آمده است، از حالت فشرده خارج می‌کند.

37. نصب یا به‌روزرسانی یا حذف بسته‌ها

با استفاده از دستورهایی که در‌ادامه می‌خوانید، باتوجه‌به توزیع لینوکس مورداستفاده‌تان، بسته را می‌توانید حذف یا نصب یا به‌روزرسانی کنید. این دستور در خط فرمان سیستم‌های مختلف لینوکسی ممکن است متفاوت باشد؛ به‌همین‌دلیل، ما به همه آن‌ها اشاره می‌کنیم.

در توزیع‌های دبیان (اوبونتو و لینوکس و مینت):

sudo apt install gimp

در توزیع‌های ردهت (فدورا و سنت‌او‌اس):

sudo yum install gimp

در توزیع‌های آرچ (مانجارو و آرکو):

sudo pacman -S gimp

مقاله‌ی زیر مقایسه کاملی از سرویس‌های میزبانی تحت دو سیستم عامل لینوکس و ویندوز است برای اطلاعات بیشتر در این زمینه، این مقاله را از دست ندهید.

38. دستور نمایش متن در ترمینال

این دستور چیزی شبیه به یکی از سینتکس‌های پی‌اچ‌پی است و با استفاده از آن، متن را در باکس ترمینال به‌راحتی می‌توانید نمایش دهید:

echo “Cool message”

خروجی آن نیز Cool message است.

39. پیش‌نمایش فایل‌ها

با استفاده از دستور cat، می‌توانید فایل‌ها را مستقیماً در ترمینال ایجاد و آن‌ها را به‌هم متصل کنید و فایل را در ویرایشگر گرافیکی متن ببینید:

cat long_text_file.txt

40. نمایش پردازش‌های پس‌زمینه

با استفاده از این دستور پرکاربرد لینوکس، می‌توانید به‌راحتی پردازش‌هایی را مشاهده کنید که در هسته و لینوکس در حال انجام است. این دستور شناسه فرایند و زمان و نام فرمان را به‌نمایش می‌گذارد و یکی از گزینه‌های کاربردی برای کسانی است که مدام نگران منابع مصرفی سرور یا سخت‌افزار خود هستند:

ps

41. دستور پایان فرایند در حال اجرا

اگر بخواهیم این دستور را به‌صورت ویندوزی به شما توضیح دهیم، در‌واقع همان کار End Task را در منو نرم‌افزارهای در حال اجرا در سیستم‌‌عامل ویندوز می‌کند. زمانی که نرم‌افزاری به هر دلیل از کار می‌افتد یا در پس‌زمینه سعی می‌کند که اجرا شود؛ اما موفق نمی‌شود یا وقت شما را تلف می‌کند، از دستور کشتن (kill) می‌توانید استفاده کنید. برای مثال، نیاز است که ID پردازش یا نام برنامه را وارد کنید:

kill 533494

kill firefox

42. دستور پینگ در لینوکس

این دستور نیز ازجمله دستورهای محبوب و پراستفاده لینوکس است که از آن می‌توان هم در سرور و هم در شبکه‌های خانگی بهره برد. با استفاده از این دستور، می‌توانید به‌راحتی آی‌پی وب‌سایت یا فعالیت آی‌پی دلخواهتان را به‌دست بیاورید. برای این کار، این‌گونه عمل کنید:

ping google.com

ping 8.8.8.8

43. ویرایشگر متن ترمینال

دستور بعدی vim را اجرا می‌کند. این ویرایشگر متن ترمینال به‌‌رایگان کار می‌کند و از دهه ۱۹۹۰ در لینوکس به‌کار برده می‌شود. نرم‌افزار متنی یادشده به شما اجازه می‌دهد که به‌راحتی متن‌ها را با استفاده از صفحه‌کلید ویرایش کنید:

vim

44. نمایش تاریخچه دستورهای استفاده‌شده

شاید شما هم مثل بسیاری از افراد در به‌خاطر‌سپردن دستورها مشکل داشته باشید. در این صورت، می‌توانید آن را در تاریخچه آخرین دستورهایی پیدا کنید که در ترمینال وارد کرده‌اید. از‌نظر توسعه‌دهندگان نرم‌افزاری و کاربران لینوکسی، این دستور یکی از دستورهای محبوب‌ و کاربردی لینوکس محسوب می‌شود:

history

45. تغییر رمزعبور حساب کاربری

اگر به هر دلیل می‌خواهید رمز‌عبور حساب کاربری‌تان را در سیستم‌عامل لینوکس تغییر دهید، از دستور password می‌توانید به‌راحتی استفاده کنید:

passwd

پس از تایپ این دستور، پنجره رمزعبور فعلی و تغییر به رمزعبور جدید به‌نمایش درمی‌آید. اگر به هر دلیل رمزعبور فعلی را نداشته باشید، نمی‌توانید این فرایند را به‌پایان برسانید.

46. غیرقابل‌بازیابی‌‌کردن فایل در لینوکس

با استفاده از این دستور کاربردی، می‌توانید فایل‌ها را طوری از بین ببرید که بازگردانی و بازیابی آن‌ها عملاً غیرممکن شود:

shred file_to_shred.txt

درواقع، این دستور‌ ساختار فایلتان را ناخوانا و کدها را نامفهوم می‌کند. حتی اگر می‌خواهید آن فایل را فوراً حذف کنید تا پس از ریکاوری نیز نمایش‌دادنی نباشد، از این دستور استفاده کنید:

shred -u file_to_shred.txt

47. چاپ خطوط خاص از فایل متنی

این دستور نیز ازجمله دستورهای پراستفاده لینوکس به‌شمار می‌رود که به شما اجازه می‌دهد آخرین خط یا خط‌های خاصی از فایل متنی را چاپ کنید. برای مثال، می‌توانید مشخص کنید که خط ۱۱ از فایل متنی چاپ شود:

tail long.txt

البته برای این کار باید در n– عدد خط مدنظر را وارد کنید:

tail -n 4 long.txt

48. یافتن عبارت در فایل

احتمالاً برای شما هم پیش آمده است که در فایلی خاص به‌دنبال عبارتی خاص باشید. برای نمونه، می‌خواهید در فایل متنی هرچه عبارت new وجود دارد، نمایش داده شود. برای این کار، می‌توانید از دستور grep استفاده کنید:

grep “new” long.txt

با استفاده از دستور c–، می‌توانید تعداد دفعات تکرار یک واژه در یک فایل را بیابید:

grep -c “linux” long.txt

# 2

49. دستور بازیابی محتوا از اینترنت

با این دستور که به وب گسترده جهانی اشاره می‌کند، محتوا را از اینترنت می‌توانید بازیابی کنید یا نمایش دهید. برای این کار، نخست دستور را بنویسید و سپس آدرس وب‌سایت را درج کنید:

wget https://raw.githubusercontent.com/DaniDiazTech/Object-Oriented-Programming-in-Python/main/object_oriented_programming/cookies.py

برای درک بهتر این موضوع، کافی است به مثال بالا توجه کنید. شایان ذکر است به‌جای آدرس می‌توانید هرچیزی بگذارید.

50. دستور find

این دستور همان‌طور‌که از نامش مشخص است، برای یافتن فایل در دایرکتوری استفاده می‌شود. به‌منظور انجام این کار، آدرس و flags و خصوصیات و نام آن را می‌توانید بنویسید. به‌طور مثال، در نمونه‌ای که در‌ادامه می‌بینید، فایل متنی جست‌وجو می‌شود:

find ./ -name “long.txt” # ./long.txt

برای جست‌وجوی فایل‌هایی با فرمت پایتون، می‌توانید بدین‌شکل عمل کنید؛ البته امکان فراخوانی از گیت‌هاب نیز وجود دارد:

find ./ -type f -name “*.py” ./get_keys.py ./github_automation.py ./binarysearch.py

51. دستور neofetch

احتمالاً برای شما هم پیش‌ آمده است که بخواهید اطلاعات تکمیلی در‌خصوص سخت‌افزار و مشخصات فنی و نسخه سیستم‌عامل و ورژن آن را در لینوکس بیابید. برای این کار، می‌توانید از دستور neofetch استفاده کنید:

neofetch

52. نمایش اطلاعات اولیه سیستم‌عامل و سخت‌افزار

این دستور نیز برای نمایش مشخصات دستگاه و سیستم‌عامل و نسخه لینوکس نصب‌شده به‌کار برده می‌شود. با استفاده از آن، درباره ورژن سیستم‌عامل خود و جدیدترین به‌روزرسانی و پَچ آن می‌توانید اطلاعات مفیدی کسب کنید:

uname

# Linux

uname -a

# Linux kinstamanjaro 5.4.138-1-MANJARO #1 SMP PREEMPT Thu Aug 5 12:15:21 UTC 2021 x86_64 GNU/Linux

53. دستور wc

این دستور نشان‌دهنده تعداد کلمات یک فایل متنی است. برای نمونه، اگر فایل وردی دارید و می‌خواهید تعداد واژه‌های آن را بررسی کنید یا دوست دارید بدانید که فایل txt شما از چند واژه تشکیل شده است، این دستور به شما اجازه این کار را می‌دهد. افزون‌براین، با کمک دستور یادشده امکان مشاهده تعداد خط‌ها و اندازه و نام فایل وجود دارد. در‌واقع، نام فایل صرفاً بازگردانی می‌شود:

wc long.txt

# 37 207 1000 long.txt

54. جست‌وجو درباره دستورهای لینوکس با whatis

این دستور وارد پایگاه‌ داده می‌شود و درباره دستور‌های لینوکس چیزهایی را جست‌وجو می‌کند که شما مشخص کرده‌اید و شرح تک‌خطی از دستوری دیگر است:

whatis python

# python (1) – an interpreted, interactive, object-oriented programming language

whatis whatis

# whatis (1) – display one-line manual page descriptions

55. دستور whoami

این دستور به‌معنای «من کیستم» است و نام کاربری حساب لینوکسی شما را نمایش می‌دهد. در‌واقع، اگر می‌خواهید اطلاعاتی در‌باره نام کاربری خود به‌دست آورید، این دستور ساده‌ترین کار را انجام می‌دهد:

whoami

# kinsta

56. دستور head

این دستور از خط اول فایل متنی خروجی می‌دهد؛ اما شما می‌توانید هر تعداد خطی که می‌خواهید نمایش داده شود، تنظیم کنید. در مثال زیر، می‌بینید در خط پایین دستور خواسته شده ۵ خط نمایش داده شود:

head long.txt

head -n 5 long.txt

57. دستور less

این دستور به شما امکان بررسی فایل‌ها را می‌دهد. در‌واقع با استفاده از آن، اسکرول‌کردن در متن‌ها را که به‌صورت پیش‌فرض در ترمینال وجود ندارد، به‌راحتی می‌توانید انجام دهید. برای این کار، کافی است که دستور مذکور را همراه نام فایل وارد کنید:

less large_text_file.txt

58. دستور which

این دستور موقعیت دستور اجرایی را به شما نمایش می‌دهد و بهترین روش برای جست‌وجو بین دستورهای لینوکسی است و سوئیچ‌های مختلفی در آن وجود دارد. در سیستم‌عامل لینوکس، با هر دستوری که در ترمینال وارد می‌کنید، درحقیقت یک کتابخانه را فراخوانی می‌کنید. برای نمونه، در مثال زیر می‌توانید آدرس فراخوانی مرورگر بریو را در سیستم‌عاملتان مشخص کنید:

which python

# /usr/bin/python

which brave

# /usr/bin/brave

59. دستور touch

با استفاده از این دستور، می‌توانید زمان دسترسی و اصلاح فایل‌ها را به‌روز کنید. به‌عنوان مثال، فایلی دارید که آخرین‌بار یک ماه پیش به‌روز و اصلاح شده است. برای تغییر تاریخ اصلاح آن، می‌توانید بدین‌ترتیب عمل کنید:

touch -m old_file

60. دستور ./

این دستور را نمی‌توان جزو فرمان‌های اصلی لینوکس دانست؛ اما به شما اجازه می‌دهد فایل اجرایی را با هر مترجمی که روی سیستمتان نصب شده است، مستقیماً از روی ترمینال اجرا کنید. با این کار، دیگر به دو بار کلیک‌کردن و اجرای فایل در محیط گرافیکی نیازی ندارید.

برای نمونه، با استفاده از این دستور می‌توانید به‌راحتی فایل‌های نرم‌افزار شبیه‌ساز سرور مانند XAMPP را اجرا کنید. هنگام اجرای دستور یادشده، مطمئن شوید که سطح دسترسی لازم را به کاربر داده‌اید:

#! /usr/bin/python3

# filename: script

for i in range(20):

print(f”This is a cool script {i}”)

در این‌جا، نحوه تبدیل اسکریپت به فایل اجرایی و اجرای آن آمده است:

chmod +x script

./script

دستور‌های ویژه لینوکس

فهرست جامع، دستورهای ویژه لینوکسی

هر کدام از این دستورها لازمه‌های کار با پلتفرم لینوکس هستند.

کاربرددستور
نمایش فهرست دایرکتوریls
نمایش فهرستی از تمام نام‌های تعریف‌شدهalias
alias حذف فهرستunalias
چاپ دایرکتوریpwd
تغییر دایرکتوریcd
کپی فایل و دایرکتوریcp
حذف فایل و دایرکتوریrm
انتقال و تغییر نام دایرکتوریmv
ایجاد دایرکتوری‌هاmkdir
نمایش صفحه دستورهای دیگر به‌طور دستیman
ساخت فایل خالیtouch
تغییر سطح دسترسیchmod
اجرای فایل‌های اجرایی./
خروج از محیط شل ترمینالexit
اجرای دستورها به‌عنوان Superusersudo
خاموش‌کردن دیوایسshutdown
نمایش اطلاعات فرایندها و منابعhtop
استخراج فایل‌های فشرده زیپunzip
مدیریت پکیج‌هاapt, yum, pacman
نمایش خط‌ها از متنecho
نمایش محتوای فایلcat
گزارش وضعیت فرایندهای پوستهps
خاتمه برنامه‌هاkill
آزمایش اتصال شبکهping
ویرایش متن کارآمد لینوکسیvim
نمایش فهرستی از دستورهای قبلیhistory
تغییر رمزعبور کاربرpasswd
برگرداندن مسیر باینری کامل برنامهwhich
بازنویسی فایل با هدف پنهان‌کردن محتویات آنshred
بررسی فایل‌ها به‌صورت تعاملیless
نمایش آخرین خطوط یک فایلtail
نمایش اولین خطوط یک فایلhead
چاپ خطوط مطابق با الگوهاgrep
نمایش نام کاربریwhoami
نشان‌دادن توضیحات تک‌خطیwhatis
نمایش تعداد کلمات یک فایل متنیwc
نمایش مشخصات سیستم‌عامل و ورژن لینوکسuname
نمایش مشخصات سخت‌افزاری و توضیحاتی درخصوص سیستم‌عاملneofetch
جست‌وجوی فایل‌هایی که از یک الگو پیروی می‌کنندfind
بازیابی فایل‌ها از اینترنتwget

*****

دستورات مدیریت فایل در لینوکس

61. pwd

این دستور برای نمایش لوکیشن دایرکتوری فعلی استفاده می شود. منظور از لوکیشن همان مسیری است از دایرکتوری روت تا دایرکتوری فعلی وجود دارد.

Syntax: pwd [option]


نمایش مسیر منطقی

pwd -L

نمایش مسیر فیزیکی

pwd -P

نمایش ورژن pwd

pwd -version

62. mkdir

کاربر با استفاده از دستور mkdir دایرکتوری جدیدی را به مسیر موردنظر اضافه می کند. گزینه های متنوعی وجود دارد که با استفاده از آنها می توان ویژگی های مختلفی برای این دستور لحاظ کرد.

Syntax: mkdir [options] [directories]


ایجاد دایرکتوری جدید در مسیر فعلی

mkdir mydirct_name

ایجاد چند دایرکتوری به صورت همزمان در مسیر فعلی (بین کاما و اسم دایرکتوری نباید هیچ فاصله ای باشد)

mkdir {dir1,dir2,dir3}

ایجاد دایرکتوری به صورت تو در تو (از پدر به فرزند)

mkdir –p first/second/third

مجوز دادن به دایرکتوری جدید

mkdir -m a=rwx [directory]

نمایش اطلاعات مفید در مورد دستور mkdir

mkdir –help

63.cd

از این دستور برای پیمایش در بین فایل ها و دایرکتوری ها استفاده می شود. مسیر فعلی شما بستگی به دایرکتوری دارد که اکنون در داخل آن قرار دارید.

به عنوان مثال اگر در مسیر /home/username/Documents قرار دارید و می خواهید به دایرکتوری Photos موجود در آن مسیر بروید، کافی است دستور cd Photos را وارد کنید.

Syntax: cd [options] directories


قرار گرفتن در لوکیشن موردنظر

cd dir_1/dir_2/dir_3

تغییر دایرکتوری فعلی به دایرکتوری ریشه (نقطه شروع هر مسیر)

cd /

تغییر دایرکتوری به دایرکتوری home

cd یا ~ cd

انتقال به دایرکتوری parent

cd ..

انتقال به دایرکتوری قبلی که کاربر اخیراً در آنجا حضور داشت.

cd -

64. ls

این دستور برای نمایش لیستی از محتویات دایرکتوری موردنظر استفاده می شود. کاربر با تایپ ls در ترمینال، لیست فایل ها و دایرکتوری های تو در تو را مشاهده می کند.

Syntax: ls [options] [directory]


نمایش لیست محتویات موجود در مسیر موردنظر

ls path

نمایش محتویات دایرکتوری پدر دایرکتوری فعلی

ls ..

نمایش لیست دایرکتوری ها به همراه زیر دایرکتوری ها

ls *

نمایش لیست محتویات دایرکتوری به همراه نام فایل یا دایرکتوری، مجوز، تعداد لینک ها، اندازه محتوا و …

ls –l

65. rmdir

دستور rmdir برای حذف دایرکتوری استفاده می شود.

دستور rmdir برای حذف دایرکتوری خالی استفاده می شود.

Syntax: rmdir [-p] [-v | –verbose] [–ignore-fail-on-non-empty] directories

توجه: با این دستور فقط می توانید دایرکتوری های خالی را حذف کنید. اگر دایرکتوری موردنظر خالی نباشد، یک پیام خطا دریافت خواهید کرد.


با p، آرگومان های موجود در بخش دایرکتوری به عنوان مسیر در نظر گرفته می شوند و در صورت خالی بودن به ترتیب (از اول تا آخر) حذف می شوند.

rmdir –p

با استفاده از گزینه v، اطلاعات مربوط به هر دایرکتوری در حال پردازش، نمایش داده می شود.

rmdir -v, –verbose

اگر تمایلی به مشاهده پیام خطای مربوط به خالی نبودن دایرکتوری ندارید، می توانید گزینه زیر را استفاده کنید.

rmdir –ignore-fail-on-non-empty

66. grep

کاربر از این دستور برای پیدا کردن عبارت موردنظر در داخل فایل یا فایل های موردنظر استفاده می کند.

برای مثال، دستور grep blue notepad.txt تمام جملات موجود در داخل فایل که دارای کلمه blue هستند را برمی گرداند.

Syntax: grep [options] کلمه مورد جستجو یا الگوی عبارت منظم directories


آپشن هایی که به کاربر کمک می کند جستجوی خود را به صورت بهینه تر انجام دهد:

c- : نمایش تعداد خط هایی که دارای کلمه موردنظر یا عبارت متناسب با الگو می باشند.

h- : نمایش خطوط موردنظر بدون اسم فایل

v- : نمایش لیستی اسم فایل های که مطابق با الگوی موردنظر نیستند.

67. cat

دستور cat یکی از دستورات چند منظوره لینوکس است و برای موارد همچون، ایجاد فایل، نمایش محتوای فایل، کپی محتوای یک فایل در فایل دیگر و … بکار می رود.


نمایش محتوای یک فایل یا چند فایل

cat file_name
cat file1,file2, …

ایجاد فایل جدید

cat > newfile

کپی محتوای یک فایل در فایل دیگر

cat [Origin filename] > [destination filename]

اضافه کردن محتوای یک فایل به به انتهای فایل دیگر

cat file1 >> file2

ادغام محتوای چند فایل

cat file1 file2 file3 > merged_file

اضافه کردن متن جدید به انتهای فایل موجود

cat >> file.txt
new text

68. chmod

chmod یکی دیگر از دستورات لینوکس است که با استفاده از آن می توان نوع دسترسی و مجوز فایل را تغییر داد. منظور از مجوز همان نوع دسترسی است که جهت خواندن، نوشتن یا اجرای فایل لحاظ می شود.

Syntax: chmod [reference][operator][mode] files


آرگومان reference برای تعیین کاربرانی است که مجوزهای دسترسی فایل به آنها اختصاص داده می شود.

در کل، برای مجوز دهی به فایل از دو روش نمادی و عددی استفاده می شود:

جدول مجوز دستورات لینوکس

نوع مجوزعددینمادی
بدون محوز0
اجرا1–X
نوشتن2-w-
نوشتن و اجرا3-wx
خواندن 4r–
خواندن و اجرا5r-x
خواندن و نوشتن6rw-
خواندن و نوشتن و اجرا7rwx

نماد مورد استفاده برای کاربرانی که می توانند از این مجوزها بهره مند شوند:

نمادکلاسشرح
uمالک فایلکاربرانی که مالک فایل هستند
gگروهکاربرانی که عضو گروه مربوط به فایل هستند
oکاربران دیگرکاربرانی که مالک نیستند و عضو گروه مربوط به فایل هم نیستند
a یا ugoهمه کاربرانتمام کاربران (همه 3 کلاس بالا)

عملگرهایی که برای روش نمادی بکار می روند:

عمل گرشرح
+افزودن مجوز مورد نظر به کلاس
حذف مجوز از کلاس مورد نظر
=جایگزین کردن مجوز جدید بجای مجوز قبلی

ارائه مجوز های موردنظر به کلاس ها به صورت نمادی

chmod u=rwx,g=rx,o=r myfile

اضافه کردن مجوز های جدید به تمام کاربران به صورت نمادی

chmod ugo+rwx folder_name
ارائه مجوزها به صورت عددی

ارائه مجوز خواندن، نوشتن و اجرا به همه کاربران به صورت عددی

chmod 777 folder_name

(۷ سمت چپ برای کاربر ایجاد کننده فایل، ۷ وسط برای اعضای گروه و ۷ سمت راست برای کاربران (به جز مالک فایل یا فولدر و اعضای گروه)


ارائه مجوزها برای ایجاد کننده فایل

ارائه مجوز های خواندن، نوشتن و اجزا به کاربر ایجاد کننده فایل

chmod 700 folder_name

ارائه مجوز نوشتن و اجرا

ارائه مجوز نوشتن و اجرا به کاربر ایجاد کننده فایل، مجوز نوشتن به اعضای گروه و مجوز خواندن، نوشتن و اجرا به کل کاربران (به جز مالک فایل یا فولدر و اعضای گروه)

chmod 327 folder_name

69. دستور chown تغییر مالکیت فایل

این دستور برای تغییر مالکیت فایل، دایرکتوری یا لینک سمبلیک استفاده می شود.

Syntax: chown [options] user[:group] files


تغییر مالکیت فایل

chown owner_name file_name

بررسی گزینه های مربوط به این دستور به همراه مثال:

c- : ارائه گزارشات مربوط به پروسه تغییر مالکیت

chown -c owner_name file_name

f- : در صورت وجود هر گونه خطا یا نداشتن مجوز برای تغییر مالکیت، استفاده از این گزینه باعث می شود که مالکیت به صورت اجباری تغییر پیدا کند.

chown -f owner_name file_name

انتقال مالکیت فایل به یک گروه

chown :group_name file_name

انتقال مالکیت فایل به یک گروه و کاربر

chown user_name:group_name file_name

کپی مالکیت یک فایل به فایل دیگر

chown --reference=file1 file2

mv .70

این دستور برای انتقال فایل به دایرکتوری موردنظر و همچنین تغییر نام فایل بکار می رود.

Syntax: mv [option] source destination


انتقال فایل به دایرکتوری

mv a.txt path_of_directory

تغییر نام فایل متنی از a به b

mv a.txt b.txt

71. یافتن یک فایل خاص در داخل دایرکتوری find

این دستور برای پیدا کردن یک فایل خاص در داخل دایرکتوری موردنظر به کار می رود. پشتیبانی از گزینه های متنوع مثل جستجو بر اساس اسم، نوع فایل، اندازه، مجوز، کاربر، گروه، تاریخ و … باعث می شود که این دستور در بین کاربردی ترین دستورات لینوکس قرار بگیرد.

Syntax: find [شروط لازم برای عمل جستجو]  [محل شروع جستجو] [options] [محتوای موردنظر]


جستجوی فایل بر اساس نام در دایرکتوری فعلی

find . -name file.txt

جستجوی دایرکتوری هایی با اسم asam در دایرکتوری ریشه

find / -type d -name asam

جستجوی فایل های php در دایرکتوری فعلی

find . -type f -name "*.php"

نمایش مسیر فایل هایی با مجوز ۷۷۷ در دایرکتوری فعلی

find . -type f -perm 777 –print

چند مورد از دستورات لینوکس که بسته به نیاز کاربر می تواند کاربردی باشد:

– نمایش تعداد کلمات، خط ها و کاراکترهای موجود در داخل یک فایل

wc file.txt
– نمایش محتوای یک فایل در فرمت مشخص

– نمایش محتوای یک فایل در فرمت مشخص (هگزادسیمال، اکتال و کاراکترهای اسکی)

فرمت اکتال
od -b < file.txt >  

فرمت هگزا دسیمال

od -t x1 < file.txt >  

 فرمت کاراکتر اسکی

od -c < file.txt >  
– فشرده سازی فایل

فشرده سازی فایل تحت قالب zip

gzip files

– خارج کردن فایل zip از حالت فشرده

gunzip files

72. دستور diff

diff (مخفف difference) برای مقایسه خط به خط فایل ها و نمایش تفاوت های آنها استفاده می شود. حتی این دستور به کاربر می گوید که تغییر کدام خط ها باعث یکی شدن دو فایل می شود و این کار با سمبل ها و دستورات خاصی انجام می شود.

سمبل ها:

a : add

c : chage

d : delete

Syntax: diff [options] File1 File2


نمایش تفاوت های دو فایل

diff a.txt b.txt

مثلاً اگر محتوای دو فایل به صورت زیر باشد:

a.txtb.txt
Apple
Orange
Banana
Water
melon
Chery
Orange
Peach
Apple
Banana
Melon
Cherry

خروجی به این صورت خواهد بود:

diff a.txt b.txt

1d0 – خط اول (1) از فایل اول باید حذف شود (d). اگر حذف نشود، در خط شماره 0 فایل دوم قرار بگیرد.

Apple > – محتوایی که بنابه 1d0، باید حذف شود.

2a2,3 – با سمبل a یا همان add، سطرهای 2 و 3 (2،3) فایل دوم را به خط اول فایل 2 اضافه کنید.

 Peach, < Apple >  – محتوایی که باید بنابه 2a2,3، اضافه شوند.

4c5  – خط چهارم فایل اول باید با خط پنجم فایل دوم عوض شود.

Watermelon >  – محتوایی که باید عوض شود.

Melon > – محتوایی که باید با Watermelon عوض شود.

گزینه هایی دیگری هم وجود دارند که می توانند تفاوت های بین دو فایل را با فرمت دیگری نشان دهند که یکی از آنها –c است:

diff -c file1 file2

c- : قرار دادن علامت های + (add)، – (delete) و ! (change) در کنار خطوطی که بین دو فایل متفاوت هستند.

73. دستور file

دستور file برای تعیین نوع فایل استفاده می شود که کلاً از 3 مدل تست برای دسته بندی فایل استفاده می کند:

تست فایل سیستم: نتیجه این تست بر اساس یک فراخوانی سیستمی مشخص می شود. ابتدا، خالی یا پر بودن فایل بررسی می شود، سپس نوع فایل چاپ می شود.

تست جادویی: این تست برای بررسی نوع فایل هایی که داده هایی با فرمت ثابت و خاص دارند، استفاده می شود.

تست زبان: این تست با جستجوی یک سری رشته خاص از چند بلوک اول، نوع فایل را شناسایی می کند.

Syntax: file [option] [filename]


نمایش نوع فایل

file file-name

نمایش نوع فایل با حالت مختصر

file -b filename

نمایش نوع تمام فایل ها

file *

نمایش نوع فایل های یک دایرکتوری

file directoryname*/

74. rm

این دستور برای حذف آبجکت هایی مثل فایل ها، دایرکتوری ها و … از فایل سیستم استفاده می شود. دستور rm تمام ارجاعات به آن فایل را هم حذف می کند و در کل موقع استفاده از این دستور باید کمی مراقب باشید چون امکان بازیابی بعد از حذف وجود ندارد.

Syntax: rm [option] filename


حذف یک فایل

rm a.txt

حذف چند فایل

rm a.txt b.txt c.txt

حذف تعاملی فایل بر اساس تایید نهایی کاربر (فشردن y برای تایید)

rm -i d.txt

حذف اجباری فایل در صورت نیاز به مجوز نوشتن

rm -f e.txt

حذف تمام زیرشاخه ها و فایل ها از دایرکتوری والد به صورت بازگشتی

rm -r *

cp .75

cp مخفف copy است که برای کپی کردن فایل ها یا دایرکتوری ها استفاده می شود. این دستور یک نسخه مشابه فایل اصلی روی دیسک ایجاد می کند و در کل حداقل به دو اسم فایل به عنوان آرگومان نیاز دارد.

Syntax: cp [option] Source Destination


کپی فایل اصلی در فایل دیگر

cp Src_file Dest_file

کپی چند فایل با همان اسم در دایرکتوری دیگر

cp Src_file1 Src_file2 Src_file3 Dest_directory

کپی تمام فایل های یک دایرکتوری در دایرکتوری دیگر به صورت بازگشتی 

cp -R Src_directory Dest_directory

کپی یک فایل در فایل دیگر به صورت اجباری و بدون نیاز به مجوز نوشتن

cp -f a.txt b.txt

76. locate 

این دستور برای پیدا کردن فایلی با اسم مشخص استفاده می شود. locate نسبت به find سریعتر و بهتر عمل می کند چون به جای فایل سیستم جستجوی خود را از طریق دیتابیس انجام می دهد.

locate [OPTION] PATTERN

جستجوی یک فایل با اسم مشخص

locate sample.txt

نمایش نتایج تا یک حد مشخص (مثلاً ۲۰ نتیجه)

locate "*.html" -n 20

نمایش تعداد نتایج مطابق با فایل یا پسوند مشخص

locate -c [.txt]*

نادیده گرفتن حساسیت مربوط به بزرگ یا کوچک بودن حروف

locate -i *SAMPLE.txt*

77. دستور nano

در واقع، nano یک ویرایشگر متنی کاربرپسند و ساده است که معمولاً در اکثر سیستم های لینوکس به طور پیش فرض نصب شده است. این ویرایشگر با خط فرمان کار می کند و دستورات خاص آن عملیات ساده ای مثل ایجاد فایل یا جستجو، جایگزینی و … را انجام می دهند.

nano [operation]

نصب nano

نصب nano اوبونتو و دبیان

sudo apt install nano

نصب nano سنت اوس و ردهت

sudo yum install nano

نصب nano فدورا

sudo dnf install nano

79. ایجاد فایل

ایجاد یک فایل جدید

nano file-name

این دستور یک ویرایشگر خالی را با اسم فایل را باز می کند که در کنسول پایینی مجموعه ای از میانبرهای کیبورد لحاظ شده اند. مثل تصویر زیر:

مثلاً o^ نشاندهنده این است که باید کلید ترکیبی ctrl+o را فشار دهید تا فایل موردنظر را در دیسک بنویسید.

برای آشنایی با همه shortcut های کیبورد می توانید g^ یا همان ctrl+g را فشار دهید.

باز کردن یک فایل

اگر قبلاً ویرایشگر را باز نکرده اید، دستور زیر فایل موردنظر باز می کنید:

nano existing-file-name

اگر در فضای nano قرار دارید، با فشردن  Ctrl+R شما خواسته می شود که نام فایلی که در لوکیشن فعلی قرار دارد را وارد کنید. Ctrl+T هم مرورگر فایل داخلی nano  را باز می کند تا فایل موردنظر را پیدا کرده و باز کنید.

جستجو و جایگزینی متن

برای جستجو در فایل متنی کافی است Ctrl + w را فشار دهید و بعد از تایپ کلمه موردنظر، Enter را فشار دهید.

اگر قصد جستجو و جایگزینی یک رشته با رشته دیگر را دارید، ابتدا باید کلید ترکیبی/+Ctrl را فشار دهید و Enter را بزنید. بعد، کلمه موردنظر را وارد کنید و Enter را بزنید. الان نوبت وارد کردن در کلمه  ای است که می خواهید با کلمه قبلی جایگزین کنید، بعد از این که در بخش مشخص آن کلمه را وارد کردید، دوباره Enter را بزنید تا جایگزینی انجام شود.

دستور vim

vim هم یک ویرایشگر متنی است که به عنوان یک نسخه پیشرفته Vi، قابلیت های بیشتری دارد. عمل undo چند سطحی، برجسته سازی Syntax، ویرایش command line و … فقط چند مورد از این قابلیت ها هستند. این ویرایشگر از انواع فایل ها پشتیبانی می کند و به عنوان ویرایشگر برنامه نویسی هم شناخته می شود.

این ویرایشگر ۲ حالت دارد:

حالت insert: با فشار دادن کلید i می توان وارد این حالت شد.

حالت Command: با فشار دادن کلید ESC می توان وارد این حالت شد.

که هر کدام از این حالت ها عملیات مربوط به خود را دارند که با وارد کردن یک یا چند کاراکتر خاص، این عملیات به صورت خودکار انجام می شوند.

Syntax: vim [options] [filelist]

ویرایش یک فایل

باز کردن یک فایل و شروع ادیت

vim file-name

x – حذف یک کاراکتر خاص

x – 

undo کردن دستور قبلی

u –

A – اضافه کردن متن به انتهای فایل

A – 

دستور !q: – حذف تمام تغییرات

!q: – 

a – اضافه کردن متن به بخش بعد از نقطه ای که اشاره گر قرار دارد.

a –

O – باز کردن یک خط در بالای اشاره گر

O – 

دستورات کاربری لینوکس

دستور sudo

sudo یکی از پرکاربردترین دستورات لینوکس است که برای ارائه مجوز دسترسی ادمین استفاده می شود. اگر می خواهید دستوری را به عنوان ادمین اجرا کنید، با کمک این دستور اجازه دسترسی پیدا می کنید. کاربری که امتیازات پایین تری دارد، با استفاده از این دستور، اقدام لازم را به عنوان ادمین اجرا می کند.

این دستور معادل گزینه run as administrator در ویندوز است.

sudo [options] command

برخی از گزینه هایی که برای دستورات sudo لحاظ می شوند:

v- : نمایش اطلاعات مربوط به ورژن sudo

l- : نمایش امتیازات کاربر یا بررسی یک دستور خاص

k- : ریست کردن timestamp کاربر و حذف احراز هویت او

u- : اجرای دستور موردنظر به عنوان یک کاربر دیگر


خاموش کردن سیستم

ریستارت سیستم به عنوان کاربر روت

sudo shutdown -r now

تغییر کاربر به کاربر روت بدون تغییر مسیر دایرکتوری

sudo –s

اجرای هر دستور خاص مثل ایجاد کاربر یا گروه جدید به عنوان ادمین نیاز به اضافه کردن دستور sudo قبل از دستور موردنظر است.

اضافه کردن کاربر جدید

دستور useradd

دستور useradd برای اضافه کردن کاربران جدید به سیستم

از آنجایی که لینوکس یک سیستم عامل چند منظوره است، دستور useradd برای اضافه کردن کاربران جدید به سیستم استفاده می شود. البته بهتر است به این نکته نیز توجه داشته باشید که نام کاربری با useradd و رمز عبور با دستور passwd مشخص می شود. حذف کاربر نیز با دستور userdel انجام می شود.

Syntax: useradd [options] user_name


اضافه کردن کاربر ساده

sudo useradd user_name

اختصاص دایرکتوری home به کاربر جدید

sudo useradd -d /home/ user_name

ایجاد کاربر جدید با شناسه کاربری مشخص

sudo useradd -u 1234 user_name

ایجاد کاربر جدید با شناسه گروه مشخص

sudo useradd -g 1000 user_name

ایجاد کاربر جدید با تاریخ انقضا

sudo useradd -e 2023-05-30 user_name
دستور passwd تغییر رمز کاربر

دستور passwd برای تغییر رمز کاربران استفاده می شود. کاربر روت می تواند علاوه بر رمز خود، رمز کاربران دیگر را نیز تغییر دهد. در حالی که یک کاربر معمولی فقط قادر به تغییر رمز عبور خودش است. البته همانطور که قبلاً نیز اشاره کردیم، دستور sudo اختیارات کاربر روت را در اختیار کاربر معمولی قرار می دهد.

Syntax: passwd [options] [username]

تغییر رمز توسط کاربر معمولی توسط خودش

passwd

تغییر رمز کاربر معمولی توسط کاربر روت

passwd user1

تغییر رمز کاربر دیگر توسط کاربر معمولی

sudo passwd user1

چند گزینه پرکاربرد برای دستور passwd:

d- یا delete: این گزینه رمز کاربر را حذف می کند تا حساب کاربری بدون رمز عبور باشد.

e- یا expire- : با این گزینه، رمز کاربر منقضی می شود و کاربر برای ورود بعدی خود مجبور است رمز خود را تغییر دهد.

l- یا lock- : این گزینه برای قفل رمز عبور کاربر استفاده می شود. منظور از قفل، غیر فعال سازی نیست بلکه از ورود کاربر با رمز عبور جلوگیری می کند.

S- یا status- : با این گزینه، وضعیت رمز کاربری با قالبی که دارای ۷ فیلد است، نمایش داده می شود.

q- یا quite- : با لحاظ کردن این گزینه، دستور passwd بدون نمایش خروجی کار می کند.

R- یا root- : این گزینه مخصوص کاربران پیشرفته است و با استفاده از آن می توان تغییراتی را در CHROOT_DIR ایجاد کرد از فایل های پیکربندی آن استفاده کرد.

دستور groupadd

به کمک groupadd می توان کاربران با سطوح یکسان را در یک گروه قرار داد.

امکان تعامل همزمان چند کاربر با سیستم باعث می شود که نیاز به ایجاد گروه باشد. در واقع، مجوز دادن به تک تک کاربران به صورت مجزا کار دشواری است.

Syntax: groupadd [option] group_name

گزینه هایی که می توان برای ایجاد گروه در نظر گرفت:

f- یا force- : هر گروه، ID منحصر به فرد خود را دارد و در صورتی که هنگام ایجاد گروه از GID تکراری استفاده شود، f- پیام مربوط به این عملیات را نشان داده و عمل خروج از پروسه ایجاد گروه با موفقیت انجام می شود.

sudo groupadd -f g_name

g- یا gid- : این گزینه برای اختصاص یک شناسه منحصر به فرد به گروه جدید استفاده می شود. این شناسه باید یک عدد مثبت باشد.

اگر شناسه خاصی را برای گروه در نظر نگیرید، سیستم به طور پیش فرض یک شناسه بزرگتر از شناسه گروه های موجود را برای گروه جدید درنظر می گیرد.

sudo groupadd g_name -g 1100

o- یا non-unique– : این گزینه باعث می شود که قانون منحصر به فرد بودن شناسه گروه برای گروه جدید لحاظ نشود و گروهی با ID غیر منحصر بفرد اضافه شود.

groupadd -o g_name sudo

r- یا system- : استفاده از این گزینه باعث ایجاد گروه سیستمی می شود. شناسه های گروه سیستمی جدید باید در بازه SYS_GID_MIN و SYS_GID_MAX (به جای GID_MIN و GID_MAX مربوط به گروه های معمولی) تعریف شده در login.defs، انتخاب شود. معمولاً شناسه های 0 تا 999 برای گروه های سیستمی اختصاص داده می شوند.

groupadd -r g_name sudo

دستور K- یا key- 

K- یا key- :

کاربر با استفاده از این گزینه می تواند پیش فرض های مربوط به فایل login.defs (GID_MIN، GID_MAX و …) را لغو و آنها را دوباره مقدار دهی کند.

sudo groupadd g_name -K GID_MIN=8000 -K GID_MAX=9999

دستورات عملیاتی لینوکس

apt –get

apt یک ابزار مدیریت بسته قدرتمند و رایگان برای لینوکس است. این ابزار برای نصب بسته های نرم افزاری جدید، حذف بسته های موجود و ارتقا نرم افزارها استفاده می شود.

برای اجرای این دستور نیز نیاز به دسترسی مدیریتی دارید که با استفاده از sudo فراهم می شود.

نصب یک بسته جدید

apt-get install pack_name

یا

apt install pack_name

حذف بسته موجود

apt-get remove pack_name

یا

apt remove pack_name

حذف بسته به همراه فایل های پیکربندی مربوط به آن

apt-get purge pack_name

یا

apt purge pack_name

حذف تمام بسته های بدون استفاده

apt-get autoremove

یا

apt autoremove

دستور date، time و cal

همانطور که از اسم هر کدام مشخص است، این دستورات برای نمایش تاریخ، ساعت و تقویم ماه جاری استفاده می شود.

دستور zcat

دسترسی به محتوای یک فایل زیپ، بدون نیاز به خارج کردن از حالت زیپ، با دستور zcat امکان پذیر است.

Syntax: zcat [options] files

گزینه هایی که می توان برای نمایش محتوا با zcat لحاظ کرد:

l- : نمایش اطلاعاتی مثل اندازه فایل اصلی، اندازه فایل فشرده شده، نرخ فشرده سازی مربوط به دو فایل

zcat –l file1.gz file2.gz

q- : حذف همه پیام های اضافی به غیر از محتوای اصلی فایل

zcat -q file.gz

دستور df

کاربر با استفاده از این دستور می تواند از میزان فضای مصرفی فایل سیستم اطلاع پیدا کند. البته وارد کردن نام فایل در این دستور باعث می شود که فضای دیسک مصرفی مربوط به فایل سیستم فایل موردنظر نمایش داده شود. وارد نکردن اسم فایل باعث نمایش تمام فایل سیستم های نصب شده می شود.

Syntax: df [option] [file]

برخی از گزینه هایی که می توان برای این دستور در نظر گرفت:

h- یا human-readable– : نمایش فضای حافظه با فرمت قابل خواندن توسط کاربر

h- یا human-readable–

ندستور  -t یا –type=TYPE نمایش فضای مصرفی فایل سیستم هایی با نوع مشخص

 -t یا –type=TYPE

sync– : جهت انجام همگام سازی قبل از نمایش اطلاعات

sync–

نمایش فضای مصرفی فایل سیستم مربوط به فایل موردنظر

df file.txt

نمایش اطلاعات مربوط به فضای مصرفی تمام فایل سیستم ها

df --total

نمایش فضای مصرفی فایل سیستم مربوط به فایل موردنظر به صورت قابل خواندن برای کاربر

df -h /home/file

mount

همه فایل های سیستم عامل لینوکس به شکل یک درخت بزرگ با ریشه «/» مرتب شده اند. این فایل ها بر اساس جدول پارتیشن بندی پخش می شوند. ابتدا دایرکتوری های والد به این درخت وصل می شوند و در ادامه سایر دایرکتوری ها و فایل ها با استفاده از رابط کاربری یا دستور mount در این درخت قرار میگیرند.

در واقع این دستور، فایل سیستم موجود بر روی دستگاه را روی ساختار درختی سوار می کند. برای جداسازی این دستگاه ها از درخت می توان از دستور umount استفاده کرد.

Syntax: mount [options] device_name directory


مشاهده لیست سیستم فایل های ext4 (نمایش لیست با گزینه l- و تعیین نوع فایل سیستم با گزینه t-)

sudo mount –l –t ext4

اتصال فایل سیستم /dev/sdb1 به دایرکتوری /mnt/media

sudo mount /dev/sdb1 /mnt/media

دستورات خروج exit

این دستور برای خروج از shell فعلی بکار می رود. اگر چند ترمینال باز باشد، این دستور باعث خروج از ترمینال فعلی می شود. همچنین، با استفاده از یک پارامتر عددی میتوان مقدار برگشتی حاصل از این خروج را مشخص کرد.

این پارامتر برگشتی برای انجام برخی اقدامات توسط دستورات دیگر موردنیاز است.

خروج معمولی بدون مقدار برگشتی

exit

خروج با پارامتر برگشتی

exit number

دستور ctrl+c

در داخل خط فرمان لینوکس یا همان ترمینال لینوکس، کلید ترکیبی ctrl+c برای ارسال سیگنال SIGINT استفاده می شود که برنامه یا دستور در حال اجرا لغو شود یا خاتمه پیدا کند. به عنوان مصال، اگر یک اسکریپت یا برنامه در یک حلقه بی نهایت گیر کرده باشد، فشردن کلید ترکیبی ctrl+c آن دستور را لغو می کند و خط فرمان را در اختیار شما قرار می دهد تا دوباره از آن استفاده کنید.

دستور which 

این دستور به عنوان یکی از مهم ترین دستورات لینوکس برای پیدا کردن لوکیشن فایل اجرایی مربوط به دستور استفاده می شود و این کار را با جستجو در مسیر متغیر محلی انجام می دهد.

در کل، با این دستور با ۳ وضعیت روبرو هستید:

۰: اگر همه دستورات مشخص پیدا شوند و به صورت “اجرا شده” باشد.

۱: اگر یک یا چند دستور مشخص وجود نداشته باشد یا در حال اجرا نباشند.

۲: اگر گزینه نامعتبر مشخص شده باشد.

Syntax: which [filename1] [filename2]


نمایش مسیر فایل(ها)

which cpp python java

نمایش نام تمام مسیرهای مرتبط با هر آرگومان

which –a cpp python

دستور man 

این دستور برای نمایش راهنمای استفاده از هر دستوری است که فایل متنی مربوط به آن توسط برنامه نویس برای کاربر تهیه شده است. به این صورت که با نمایش ویژگی هایی زیر یک نمای دقیق تری در مورد دستور موردنظر ارائه می دهد.

NAME, SYNOPSIS, DESCRIPTION, OPTIONS, EXIT STATUS, RETURN VALUES, ERRORS, FILES, VERSIONS, EXAMPLES, AUTHORS, SEE ALSO

در کل این دستورات به ۹ دسته تقسیم شده اند:

  1. برنامه های قابل اجرا یا دستورات shell
  2. فراخوانی های سیستمی
  3. فراخوانی های کتابخانه ای
  4. بازی ها
  5. فایل های خاص
  6. فرمت فایل ها
  7. دستورات متفرقه
  8. دستورات مدیریتی سیستم
  9. روتین های مربوط به کرنل

Syntax: man [OPTION] [COMMAND NAME]


نمایش تمام اطلاعات مربوط به دستور

man [COMMAND NAME]

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

man [SECTION-NUMBER] [COMMAND NAME]

نمایش شماره بخشی که دستور موردنظر به آن تعلق دارد.

man -f [COMMAND NAME]

جستجوی دستور به عنوان یک عبارت منظم در تمام فایل های اطلاعاتی دستورات

man -k [COMMAND NAME]

دستور uname

این دستور تمام اطلاعات مربوط به سیستم را نمایش می دهد.

Syntax: uname [OPTION]


نمایش اطلاعات مربوط به سیستم به ترتیب:

Kernel, name, network node hostname , …

uname  -a

نمایش اسم کرنل

uname  -s

اطلاعات از هر کدام از این بخش ها با استفاده از option های مخصوص به صورت تکی قابل نمایش است.

دستور du 

این دستور مخفف disk usage است و برای نمایش بلوک هایی استفاده می شود که فایل موردنظر در اختیار دارد. پس استفاده از این دستور برای ردیابی فایل ها و دایرکتوری هایی که فضای زیادی از دیسک را اشغال کرده اند، ایده هوشمندانه ای است.

Syntax: du [OPTION] [FILE]


نمایش تعداد بلوک مورداستفاده هر دایرکتوری موجود در دایرکتوری مشخص

du /home/project/test

نمایش میزان حافظه مربوط به دایرکتوری های موجود در دایرکتوری موردنظر ( بر اساس بایت، کیلوبایت، مگابایت و …)

du –h /home/project/test

نمایش تمام حافظه اختصاصی مربوط به تک تک فایل های موجود در دایرکتوری های مسیر موردنظر

du –a –h /home/project/test

نمایش کل حافظه اختصاصی دایرکتوری های موجود در دایرکتوری موردنظر

du –c –h /home/project/test

دستور <command <–help

اگر در مورد نحوه استفاده از یک دستور به راهنمایی نیاز دارید، اضافه کردن  –help یا –h اطلاعات لازم در مورد آن دستور را به شما ارائه می دهد.

مثلاً دستور wget –help یا wget -h تمام اطلاعات مربوط به نحوه استفاده و گزینه هایی که می توانید در این زمینه به کار ببرید را به شما نشان می دهد.

دستور kill

دستور kill، یک دستور داخلی است که برای پایان دادن به فرآیندها به صورت دستی استفاده می شود. این دستور سیگنال مشخصی را برای خاتمه فرآیند ارسال می کند که اگر این سیگنال توسط کاربر مشخص نشده باشد، به طور پیش فرض برای این کار، سیگنال TERM فرستاده می شود.

Syntax: kill [options]


نمایش تمام سیگنال های مورداستفاده برای دستور kill

kill -l

خاتمه دادن به فرآیندی با شناسه pid

kill pid

جدول دستور لینوکس

فرمان‌های کاربردی

کاربرددستور
21نمایش فهرست دایرکتوریls
22نمایش فهرست
(از تمام نام‌های تعریف‌شده)
alias
23alias حذف فهرستunalias
24چاپ دایرکتوریpwd
25تغییر دایرکتوریcd
26کپی فایل و دایرکتوریcp
27حذف فایل و دایرکتوریrm
28انتقال و تغییرنام دایرکتوریmv
29ایجاد دایرکتوریmkdir
30نمایش صفحه دستورهای دیگر به‌طور دستیman
31ساخت فایل خالیtouch
32تغییر سطح دسترسیchmod
33اجرای فایل‌های اجرایی./
34خروج از محیط شل ترمینالexit
35اجرای دستورها به‌عنوان Superusersudo
36خاموش‌کردن دیوایسshutdown
37نمایش اطلاعات فرایندها و منابعhtop
38استخراج فایل‌های فشرده زیپunzip
39مدیریت پکیج‌هاapt, yum, pacman
40نمایش خط‌ها از متنecho
41نمایش محتوای فایلcat
42گزارش وضعیت فرایندهای پوستهps
43خاتمه برنامه‌هاkill
44آزمایش اتصال شبکهping
45ویرایش متن کارآمد لینوکسیvim
46نمایش فهرستی از دستورهای قبلیhistory
47تغییر رمزعبور کاربرpasswd
48برگرداندن مسیر باینری کامل برنامهwhich
49بازنویسی فایل
(برای پنهان‌کردن محتویات آن)
shred
50بررسی فایل‌ها به‌صورت تعاملیless
51نمایش آخرین خطوط یک فایلtail
52نمایش اولین خطوط یک فایلhead
53چاپ خطوط مطابق با الگوهاgrep
54نمایش نام کاربریwhoami
55نشان‌دادن توضیحات تک‌خطیwhatis
56نمایش تعداد کلمات یک فایل متنیwc
57نمایش مشخصات سیستم‌عامل و ورژن لینوکسuname
58نمایش مشخصات سخت‌افزاری و توضیحاتی درخصوص سیستم‌عاملneofetch
59جست‌وجو
(فایل‌هایی که از یک الگو پیروی می‌کنند)
find
60بازیابی فایل‌ها از اینترنتwget

فرمان‌های سرور

دستور
نمایش آپتایم سرور  uptime
نمایش اطلاعات جامع از کاربران متصل به سرورw
یک ابزار نظارت بر عملکرد سرور است که اطلاعات جامعی را در مورد فرایندها، منابع و عملکرد کلی سرورtop
یک ابزار نظارت بر سیستم پیشرفته است که خروجی رنگی و کاربرپسندتری نسبت به top ارائه می‌دهد.Htop

فرمان‌های ارتباط

فرمان
نصب ابزارهای اینترنت sudo apt install net-tools
نصب lamp-server sudo apt install lamp-server^ -y
کاهش محدودیت‌های مجوزهای پوشه sudo chmod 777 /var/www
به روز رسانی لیست های مخازن پکیج ها sudo apt-get update
به روزرسانی پکیج های موجود و دریافت اطلاعات مربوط به نسخه جدید آنها sudo apt-get upgrade
نصب openssh استsudo apt-get install openssh-server
افزودن MaxAuthorize 4 sudo nano /etc/ssh/ssh_config
وضعیت ssh sudo service ssh status
فعالسازی ssh
غیرفعالسازی ssh
sudo service ssh start
sudo service ssh stop
مشاهده IPifconfig
ping ping 192.168.1.6
desktopsudo apt install xubuntu-desktop
نصب وب سرور lighttpdsudo apt-get install lighttpd
sudo service lighttpd start
نصب nautilus sudo apt-get install –reinstall nautilus
وضعیت nautiluswhereis nautilus
nautilusnautilus
DNSdig @resolver1.opendns.com ANY myip.opendns.com +short
نصب ngrok ./ngrok http 80

فرمان‌های دایرکتوری

فرمان
این خط فرمان نام یک یا چند دایرکتوری را از آرگومان خود می‌گیرد.mkdir [OPTION] [DIRECTORY]
انتقال نام فهرستmkdir payadir
تایید دایرکتوری
با خط فرمان Is
Is-I
ایجاد دایرکتوری جدید در مسیر /tmp directory mkdir /tmp/payadir
ایجاد دایرکتوری جدید در مسیر /root directory mkdir /root/payadir
برای هر دایرکتوری جدید ساخته شده، پیام ارسال شود.-v (–verbose) به mkdir
ایجاد دایرکتوری parent
ایجاد دایرکتوری فقط در صورت وجود نداشتن آن
mkdir -p
دایرکتوری /home/linuxize/Music/Rock/Gothic را ایجادmkdir -p / home / linuxize / Music / Rock / Gothic
دایرکتوری جدید با مجوز mkdir -m
دایرکتوری جدید با مجوز 700mkdir -m 700 payadir
ایجاد چندین دایرکتوریmkdir dir1 dir2 dir3

فرمان‌های نصبی لینوکس

Linux installation

نصب برنامه PostMan (پستچی)curl -o- "https://dl-cli.pstmn.io/install/linux64.sh" | sh

فرمان‌های سیناپس

دستور
نصب آخرین نسخه دبیان و لبونتوsudo apt install -y lsb-release wget apt-transport-https
sudo wget -O /usr/share/keyrings/matrix-org-archive-keyring.gpg https://packages.matrix.org/debian/matrix-org-archive-keyring.gpg
echo “deb [signed-by=/usr/share/keyrings/matrix-org-archive-keyring.gpg] https://packages.matrix.org/debian/ $(lsb_release -cs) main” |
sudo tee /etc/apt/sources.list.d/matrix-org.list
sudo apt update
sudo apt install matrix-synapse-py3
نصب بسته matrix-synapse از مخازن دبیان
(برای bookworm و sid)
sudo apt install matrix-synapse
نصب سیناپس در فدورا Fedora sudo dnf install matrix-synapse
نصب سیناپس در OpenSUSE sudo zypper install matrix-synapse
نصب سیناپس در ArchLinuxsudo pip install –upgrade pip
نصب سیناپس در ArchLinux
در صورت نصب تحت virtualenv
sudo pip uninstall py-bcrypt
sudo pip install py-bcrypt
نصب سیناپس در Alpine Linuxsudo apk add synapse
نصب سیناپس در لینوکس خالیxbps-install -Su
xbps-install -S synapse
نصب سیناپس در FreeBSD
پورت ها:
بسته ها:
cd /usr/ports/net-im/py-matrix-synapse && make install clean
pkg install py38-matrix-synapse
نصب سیناپس در OpenBSDdoas pkg_add synapse

نصب فایرفاکس

نصب فایرفاکس#
نصب فایرفاکس در دبیان و اوبونتوsudo apt update sudo apt install firefox
بروزرسانی به آخرین نسخه در دبیان و اوبونتوsudo apt upgrade firefox
نصب فایرفاکس در سنت‌اوس، فدورا و ردهتsudo dnf update sudo dnf install firefox

نصب و حذف مرورگر گوگل کروم

نصب و حذف گوگل کرومدستور
دستور wget
دانلود کلید
-wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add 
افزودن مخزن کروم
به منابع سیستم
'sudo sh -c 'echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list
بروزرسانیsudo apt update
نصب گوگل کروم
نسخه پایدار
sudo apt-get install google-chrome-stable [Stable Release]
نصب گوگل کروم
نسخه بتا
sudo apt-get install google-chrome-beta [Beta Release]
نصب گوگل کروم
نسخه ناپایدار
sudo apt-get install google-chrome-unstable [Unstable Release]