مجموعه‌ای از بهترین فرامین تقلب ترمنیال مک

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

 

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

  • اپلیکیشن‌های رایگان و متن‌باز مبتنی بر یونیکس فراوانی وجود دارد که با بهره‌گیری از آن‌ها دیگر نیازی به همتاهای غیررایگان نخواهید داشت و در هزینه‌های خود صرفه‌جویی خواهید کرد.
  • هنگامی که با مشکلاتی در جست‌و‌جو با اسپات‌لایت مواجهید، می‌توانید از ابزارهای جست‌وجوی یونیکس استفاده کنید.
  • شما می‌توانید به‌طور خودکار فایل‌ها، پوشه‌ها و آرشیوهای خود را مدیریت کنید. برای این‌کار تنها کافی است یک کران جاب (Cron Job) تنظیم کنید.
  • فرامین متنی، دسترسی سطح پایین‌تر و کنترل بیشتری به سیستم می‌دهند. با استفاده از فرامین متنی می‌توانید بهره‌وری سیستمتان را افزایش دهید.

برگه تقلب (Cheat Sheet) چیست؟

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

اپلیکیشن ترمینال را می‌توانید از Applications > Utilities یا با جستجوی آن در اسپات‌لایت پیدا کنید.

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

دستورکارکرد
میان‌بر
Tab تکمیل خودکار نام فایل و پوشه‌ها
Ctrl + A رفتن به ابتدای خطی که در آن در حال تایپ هستید
Ctrl + E رفتن به انتهای خطی که در آن در حال تایپ هستید 
Ctrl + U پاک کردن خط قبل از نشانگر
Ctrl + K پاک کردن خط پس از نشانگر 
Ctrl + W پاک کردن کلمه قبل از نشانگر
Ctrl + T تعویض دو کاراکتر قبل از نشانگر
Esc + T تعویض دو کلمه قبل از نشانگر 
Ctrl + L پاک کردن صفحه
Ctrl + C توقف برنامه در حال اجرا
Ctrl + D خروج از شل (Shell) کنونی
Option + → انتقال نشانگر به کلمه بعدی
Option + ← انتقال نشانگر به کلمه قبلی
Ctrl + F انتقال نشانگر به کاراکتر بعدی
Ctrl + B انتقال نشانگر به کاراکتر قبلی
Ctrl + Y چسباندن هرچیزی که از فرمان قبلی بریده شده‌بود
Ctrl + Z

قرار دادن برنامه در حال اجرا در یک پردازش پس‌زمینه‌ای معلق

Ctrl + _ پاداجرای (Undo) فرمان آخر
موارد پایه‌
/ سطح بالاترین مسیر (Top level) (/)
. (نقطه تک) مسیر فعلی
.. (دو نقطه) مسیر مادر
~ مسیر خانه
sudo [فرمان]

اجرای فرمان با مزایای امنیتی سوپر یوزر (super user)

nano [فایل] اجرای ویرایش‌گر ترمینال
open [فایل] باز کردن یک فایل
[فرمان] -h گرفتن راهنما برای یک فرمان
man [فرمان] نمایش راهنمای یک فرمان
تغییر مسیر
cd مسیر خانه (Home)
cd [پوشه] تغییر مسیر
cd ~ مسیر خانه (Home)
cd/ ریشه درایو
cd - آخرین مسیر یا پوشه‌ای که بازدید کردید
pwd نمایش مسیر در حال کار
cd.. انتقال به مسیر مادر
cd../.. بالا رفتن به میزان دو سطح
فهرست محتوای مسیر
ls

نمایش نام فایل‌ها و زیرشاخه‌های یک مسیر

ls -C

خروجی فهرست به‌صورت چند ستونه

ls -a

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

ls -1

خروجی فهرست فایل‌ها به‌صورت یک نتیجه در هر خط

ls -F

یک / (اسلش) پس از هر مسیر، یک * (ستاره) پس از فایل‌های اجرایی و اسکریپت‌ها و @ پس از یک لینک سمبولیک نمایش می‌دهد.

ls -S

مرتب‌سازی فایل‌ها براساس اندازه

ls -l

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

ls -lt

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

ls -lh

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

ls -lo

فهرست از فایل‌ها به همراه اندازه، صاحب و نشانه‌ها

ls -la

ایجاد فهرست با جزئیات از محتوای یک مسیر (به همراه فایل‌های مخفی)

اندازه فایل و فضای دیسک
du

فهرست میزان استفاده از هر زیرشاخه و محتوای آن

du -sh [پوشه]

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

du -s

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

du -sk* | sort -nr

فهرست تمامی پوشه‌ها و فایل‌ها، نمایش اندازه با درنظرگرفتن زیرشاخه‌ها. (اگر sk* با sm* جایگزین شود اندازه به‌صورت مگابایت خواهد بود)

df -h

محاسبه فضای خالی سیستم

df -H

محاسبه فضای خالی سیستم در توان ۱۰۰۰

مدیریت فایل و شاخه
mkdir <dir> ایجاد پوشه جدید با نام <dir>
mkdir -p <dir>/<dir>

ایجاد پوشه‌های تودرتو (nested)

mkdir <dir1> <dir2> <dir3> ایجاد چندین پوشه به‌طور هم‌زمان
mkdir "<dir>" ایجاد یک پوشه به‌همراه یک فاصله در نام
rmdir <dir> پاک کردن یک پوشه (پوشه باید خالی باشد)
rm -R <dir> حذف یک پوشه به‌همراه محتوای آن
touch <file> ایجاد یک فایل جدید بدون هیچ پسوندی
cp <file> <dir>

کپی یک فایل در یک پوشه

cp <file> <newfile> کپی یک فایل در مسیر فعلی
cp <file>~/<dir>/<newfile>

کپی یک فایل در یک پوشه و تغییر نام فایل کپی‌شده

cp -R <dir> <"new dir">

کپی یک پوشه در یک پوشه جدید

cp -i <file><dir>

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

cp <file1> <file2> <file3>/Users/<dir>

کپی چندین فایل در یک پوشه

rm <file> حذف دائمی یک فایل
rm -i <file> حذف یک فایل با تأیید شما
rm -f <file> حذف اجباری بدون تاییدیه
rm <file1> <file2> <file3> حذف چند فایل بدون تأیید
mv <file> <newfilename> انتقال / تغییرنام
mv <file> <dir> انتقال یک فایل به یک پوشه (در صورت وجود فایل با نام یکسان فایل جدید جایگزین خواهد شد)
mv -i <file> <dir>

نشانگر -i شما را قبل از جایگزینی مطلع می‌سازد

mv *.png ~/<dir>

انتقال تمامی فایل‌ها با پسوند PNG از مسیر فعلی به یک مسیر دیگر

تاریخچه فرمان
Ctrl + R

جست‌وجو میان فرامین استفاده‌شده قبلی

history n نمایش آخرین فرامین اجراشده. استفاده از عدد n، تعداد دستورها را به n عدد آخر، محدود می‌کند
![مقدار] اجرای آخرین فرمانی که با مقدار شروع شده‌ است
!! اجرای آخرین فرمانی که تایپ شده است
اجازه‌ها
ls -ld

نمایش اجازه‌های پیش‌فرض مسیر خانه

ls -ld/<dir>

نمایش اجازه‌های خواندن، نوشتن و دسترسی یک پوشه خاص

chmod 755 <file>

تغییر اجازه یک فایل به ۷۵۵

chmod -R 600 <dir>

تغییر اجازه یک پوشه (به همراه محتوای آن) به ۶۰۰

chown <user>:<group> <file>

انتصاب یک فایل به یک کاربر یا گروه. با اضافه کردن -R محتوای پوشه نیز لحاظ می‌شود

پردازش‌ها
ps -ax

خروجی دادن تمامی پردازش‌های در حال اجرا (a نشان‌دهنده پردازش‌های تمامی کاربران و x نشان‌دهنده پردازش‌هایی است که به ترمینال متصل نیستند)

ps -aux

نمایش تمامی پردازش‌ها به‌همراه درصد استفاده از CPU، حافظه، PID و دستور

top

نمایش اطلاعات زنده درباره پردازش‌های در حال اجرا

top -ocpu -s 5

نمایش پردازش‌ها براساس میزان استفاده از CPU (هر ۵ ثانیه به‌روزرسانی می‌شود)

top -o rsize

نمایش پردازش‌ها براساس میزان استفاده از حافظه

kill PID

توقف پردازش با استفاده از PID (این آی‌دی در یک ستون در Activity Monitor قابل مشاهده است)

ps -ax | grep <appname>

یافتن یک پردازش با نام یا PID

شبکه
ping <host>

گرفتن پینگ از هاست و نمایش وضعیت

whois <domain>

نمایش اطلاعات WHOIS یک دامنه

curl -O <url/to/file>

دریافت فایل ازطریق HTTP، HTTPS یا FTP

ssh <username>@<host> برقراری ارتباط SSH با سرور <host> و نام کاربری <username>
scp <file><user>@<host>:/remote/path کپی فایل <file> به هاست ریموت <host>
مدیریت پکیج Homebrew
brew doctor بررسی برای یافتن مشکلات احتمالی
brew install <formula> نصب یک فرمول
brew uninstall <formula> حذف یک فرمول
brew list فهرست تمامی فرمول‌های نصب‌شده
brew search

نمایش فرمول‌های در دسترس برای brew

brew upgrade

ارتقاء تمامی brewهای قدیمی

brew update

دریافت آخرین نسخه از Homebrew

brew cleanup

حذف نسخه‌های قدیمی‌تر از فرمول نصب‌شده

brew tap homebrew/cask

دریافت مخزن cask از GitHub

brew cask list

فهرست تمامی caskهای نصب‌شده

brew cask install <cask> نصب cask داده‌شده
brew cask uninstall <cask> حذف cask داده‌شده
جست‌وجو
find <dir> -name <"file">

یافتن تمامی فایل‌های با نام <file> در <dir>. استفاده از wildcardها (*) در نام فایل مجاز است

grep "<text>" <file>

نمایش تعداد موارد وجود <text> در <file> (برای غیرفعال کردن حساسیت به بزرگی و کوچکی حروف -i را اضافه کنید)

grep -rl "<text>" <dir>

جست‌وجو در <dir> برای تمام فایل‌هایی که شامل <text> می‌شوند

خروجی
cat <file> خروجی دادن محتوای <file>
less <file>

خروجی محتوای <file> با فرمان less که از صفحه‌بندی و موارد دیگری پشتیبانی می‌کند

head <file>

خروجی دادن ۱۰ خط اول <file>

<cmd> > > <file>

خروجی فرمان <cmd> را به فایل <file> اضافه می‌کند

<cmd> > <file>

هدایت خروجی فرمان <cmd> به فایل <file>

<cmd1> | <cmd2>

هدایت خروجی فرمان <cmd1> به فرمان <cmd2>

گام بعدی، شخصی‌سازی ترمینال

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





تاريخ : دو شنبه 16 ارديبهشت 1398برچسب:, | | نویسنده : مقدم |