Core utilities

از ArchWiki پارسی
پرش به: ناوبری، جستجو

این مقاله به برنامه های به اصطلاح هسته ای در یک سیستم گنو/لینوکسی می پردازد.برنامه هایی هم چون:less, ls, و grep .گستره این مقاله شامل تمامی برنام هایی است که در بسته coreutils گنو/لینوکس موجودند اما محدود به آن نمی شود.آنچه که در ادامه خدمتتان ارایه میگردد،نکات و ترفندهایی و هم چنین اطلاعات مفید مرتبطی به این برنامه هاست.

دستورات پایه

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


دستور شرح مثال
man صفحه راهنمای مربوط به هر دستور را نمایش می دهد.(manual page) man ed
cd تغییر دایرکتوری(Change directory) cd /etc/pacman.d
mkdir ساخت یک دایرکتوری(make directory) mkdir ~/newfolder
rmdir حذف دایرکتوری خالی(Remove empty directory) rmdir ~/emptyfolder
rm حذف فایل(Remove a file) rm ~/file.txt
rm -r حذف دایرکتوری و محتویاتش rm -r ~/.cache
ls لیست فایل ها(List files) ls *.mkv
ls -a لیست فایل های مخفی ls -a /home/archie
ls -al لیست کردن فایل های مخفی و پراپرتی هایش
mv انتقال یک فایل(Move a file) mv ~/compressed.zip ~/archive/compressed2.zip
cp کپی کردن فایل(Copy a file) cp ~/.bashrc ~/.bashrc.bak
chmod +x اجرایی کردن یک فایل chmod +x ~/.local/bin/myscript.sh
cat نمایش محتویات فایل cat /etc/hostname
strings نمایش کاراکترهای قابل پرینت در یک فایل باینری strings /usr/bin/free
find جستجوی فایل find ~ -name myfile
mount سوار کردن پارتیشن mount /dev/sdc1 /media/usb
df -h نمایش تمامی فضای باقی مانده در کل پارتیشن ها
ps -A نمایش تمامی پروسه های در حال اجرا
killall کشتن تمامی نمونه های در حال اجرای یک فرآیند
ss -at نمایش لیستی از سوکت های TCP باز

awk

AWK یک زبان پویش و پردازش الگوهاست. چندین پیاده‌سازی برای آن وجود دارد:


  • gawk — نسخهٔ گنوی AWK است. gawk(1) را ببینید.
https://www.gnu.org/software/gawk/ || gawk (بخشی از گروه‌بستهٔ base)
  • nawk — پیاده‌سازی صحیح از AWK است.nawk(1) را ببینید.
https://www.cs.princeton.edu/~bwk/btl.mirror/ || nawk
  • mawk — پیاده‌سازی سریع ا‌ز AWK است.
http://invisible-island.net/mawk/ || mawkAUR
  • BusyBox نیز یک پیاده‌سازی از AWK دارد.

cat

cat یک ابزار استاندارد یونیکس است که پرونده‌ها را در خروجی استاندارد الحاق می‌کند.

  • cat درون شل ساخته نمی‌شود. به همین دلیل در مناسبت‌های مختلف راحت‌تر است از یک redirection استفاده کنید یا اگر به کارایی اهمیت می‌دهید؛ برای مثال استفاده از آن در اسکریپت آسان‌تر است. در حقیقت ‎< file دقیقا کار ‎cat file را انجام می‌دهد.
  • cat می‌تواند با چند سطر کار کند:
$ cat << EOF >> path/file
first line
...
last line
EOF

از سوی دیگر می‌توانید از ‎printf‎ استفاده کنید:

$ printf '%s\n' 'first line' ... 'last line'
  • اگر می‌خواهید پرونده‌ای را معکوس مشاهده کنید، از یک ابزار هسته‌ی دیگر به‌نام tac استفاده کنید.

chmod

chown

dd

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

همانند cp، به طور پیشفرض dd یک رونوشت بیت به بیت تنجام می‌دهد؛ اما با یک‌ امکان جریان کنترل I/O سطح پایین‌تر همراه است.

بعضی نرم‌افزار‌های قابل بررسی در dd موارد زیر هستند:

  • Binary file patching: let say one wants to replace offset ‎0x123AB‎ of a file with the ‎FF C0 14‎ hexadecimal sequence, this can be done with the command line:
    # printf '\xff\xc0\x14' | dd seek=$((0x123AB)) conv=notrunc bs=1 of=/path/to/file

برای اطلاعات بیشتر dd(1) و مستندات کامل را ببینید.

نکته: به طور پیشفرض، dd هیچ خروجی‌ای تا تمام شدن وظیفه نشان نمی‌دهد. برای نظارت بر روند عملیات، امکان ‎status=progress‎ را به دستور اضافه کنید.
هشدار: هنگامی که از dd استفاده می‌کنید به شدت دقت کنید. بعضی از دستورات این ابزار برای نابودسازی اطلاعات بدون امکان بازگشت استفاده می‌شوند