دستورات پایه لینوکس با مثال

در این مبحث دستورات پایه لینوکس را که بیشترین استفاده را دارند همراه با مثال آموزش می دهیم. تلاش ما بر این است که بسیاری از دستورات را پوشش دهیم.
دستورات فایل ها
۱- با اجرای دستور لینوکس زیر به دایرکتوری ‘ home/ ‘ می روید.
1 |
cd /home |
۲- با دستور زیر به مکان قبل باز می گردید.
1 |
cd .. |
۳- با دستور زیر می توانید به دو فایل قبلی باز گردید.
1 |
cd ../.. |
۴- دستور زیر نیز شما را به دایرکتوری home می برد.
1 |
cd |
۵- دستور زیر کاربران دایرکتوری home را باز می گرداند.
1 |
cd ~user |
۶- این دستور شما را به دایرکتوری های قبلی باز می گرداند.
1 |
cd - |
دستورات “COPY” در لینوکس
۷- با استفاده از دستور زیر می توانید یک فایل را در فایل دیگری کپی کنید.
1 |
cp file1 file2 |
۸- دستور زیر تمام فایل های یک دایرکتوری را در دایرکتوری کاری فعلی کپی می کند.
1 |
cp dir/* . |
۹- یک دایرکتوری را در دایرکتوری فعلی کپی می کند.
1 |
cp -a /tmp/dir1 . |
۱۰- یک دایرکتوری را کپی می کند.
1 |
cp -a dir1 dir2 |
۱۱- فایل را در یک فایل متنی کپی می کند.
1 |
cp file file1 |
دستورات لینوکس درباره SYMLINK
۱۲- دستور لینوکس جهت ایجاد لینک نمادین در فایل یا دایرکتوری
1 |
ln -s file1 lnk1 |
۱۳- ایجاد یک لینک فیزیکی در فایل یا دایرکتوری
1 |
ln file1 lnk1 |
۱۴- مشاهده فایل های دایرکتوری
1 |
ls |
۱۵- مشاهده فایل های دایرکتوری
1 |
ls -F |
۱۶- مشاهده جزییات فایل ها و دایرکتوری
1 |
ls -l |
۱۷- مشاهده فایل های مخفی
1 |
ls -a |
۱۸- مشاهده فایل ها و دایرکتوری هایی که شامل اعداد هستند
1 |
ls *[0-9]* |
۱۹- مشاهده فایل ها و دایرکتوری ها بصورت درختی از root
1 |
lstree |
۲۰- ایجاد یک دایرکتوری با نام “dir1”
1 |
mkdir dir1 |
۲۱- ایجاد دو دایرکتوری بصورت همزمان
1 |
mkdir dir1 dir2 |
۲۲- ایجاد یک دایرکتوری درختی
1 |
mkdir -p /tmp/dir1/dir2 |
۲۳- انتقال یک فایل یا دایرکتوری
1 |
mv dir/file /new_path |
۲۴- نمایش مسیر دایرکتوری کاری
1 |
pwd |
۲۵- پاک کردن فایلی با نام “file1″
1 |
rm -f file1 |
۲۶- حذف دایرکتوری با نام ” dir1″ و محتویات آن
1 |
rm -rf dir1 |
۲۷- حذف دو دایرکتوری و محتویات آنها
1 |
rm -rf dir1 dir2 |
۲۸- پاک کردن دایرکتوری با نام “dir1”
1 |
rmdir dir1 |
۲۹- نمایش فایل ها و دایرکتوری ها که از روت شروع می شود.
1 |
tree |
دستورات لینوکس برای مدیریت پروسه ها
۳۰- کامند زیر اطلاعاتی درباره پروسه هایی که اخیرا خارج شده است را می دهد
1 |
top |
۳۱- کامند htop مشابه کامند top اما دقیقتر است.
1 |
htop |
۳۲- از کامند ps جهت لیستی از پردازش های در حال اجرا استفاده می شود (top و htop لیست پردازش هایی را که اکتیو و غیراکتیو هستند را نشان می دهد)
1 |
ps |
۳۳- در تنظیمات کامند ps ، کامند pstree برای نمایش نمودار درختی فرآیندها استفاده می شود و روابط بین آنها را نشان می دهد.
1 |
pstree |
۳۴- کامند who لیستی از کاربرانی که اخیرا در لینوکس وارد شده اند را نشان می دهد.
1 |
who |
۳۵- همانطور که نام حدس زده می شود، کامند kill برای قطع الزامی به یک پروسه بکار می رود.
1 |
kill |
۳۶- کامندهای pkill و killall کلیه پردازش هایی که نام را می دهند kill می کند.
1 |
pkill & killall |
۳۷- ID هایی را که پردازش می شود را pgrep مطابقت می دهد.
1 |
pgrep |
۳۸- با استفاده از کامند nice، کاربران می توانند اولویت پردازش هایشان را تنظیم و یا تغییر دهند.
1 |
nice |
۳۹- دستور زیر مشابه کامند nice است. با این تفاوت که از این دستور برای تغییر اولیت یک فرایند در حال اجرا استفاده می شود.
1 |
renice |
۴۰- ID یک فرآیند را در حال پردازش را می دهد.
1 |
pidof |
۴۱- کامند زیر مقدار فضای خالی هارد دیسک سیستم را باز می گرداند.
1 |
df |
۴۲- RAM خالی در سیستم شما را باز می گرداند.
1 |
free |
مجوزهای فایل
۴۳- کامند chmod برای تغییر مجوزها بکار می رود.
مجوز chmod برای dir/file
1 2 |
chmod 755 Linux_Directory chmod 644 Linux_File |
مجوزهای مختلف فایل
1 |
rwx rwx rwx = 111 111 111 |
1 |
rw- rw- rw- = 110 110 110 |
1 |
rwx --- --- = 111 000 000 |
1 |
rwx = 111 in binary = 7 |
1 |
rw- = 110 in binary = 6 |
1 |
r-x = 101 in binary = 5 |
1 |
r-- = 100 in binary = 4 |
۶ = ۴+۲ (read/write)
۵ = ۴+۱ (read/execute)
۴ = ۴ (read)
۳ = ۲+۱ (write/execute)
۲ = ۲ (write)
۱ = ۱ (execute)
چکیده ایی پیرامون مجوزها در لینوکس
دستورات لینوکسی زیادی برای زمانی که در مورد مجوزها صحبت می کنیم وجود دارد. محدودیتی برای مجوزها وجود ندارد. هرکسی ممکن است هرکاری انجام دهد. بطورکلی یک تنظیم مطلوب دراین رابطه وجود ندارد.
1 |
777 (rwxrwxrwx) |
کاربر اصلی ممکن است فایل را بخواند، بنویسد و اجرا کند. دیگر کاربران ممکن است فایل را بخوانند و اجرا کنند. این قابلیت برای برنامه هایی که توسط همه کاربران مورد استفاده قرار می گیرد مورد استفاده قرار می گیرد تنظیم می شود.
1 |
755 (rwxr-xr-x) |
کاربر اصلی قادر به خواندن، نوشتن و اجرای فایل است. کاربران دیگر چنین اجازه ایی را ندارند. این قابلیت تنها برای برنامه هایی که کاربر اصلی قادر به استفاده از آن است و دیگران قادر به استفاده از آن نیستند قابل تنظیم است.
1 |
700 (rwx------) |
کاربران دیگر قادر به خواندن و نوشتن فایل هستند.
1 |
666 (rw-rw-rw-) |
کاربر اصلی قادر به خواندن و نوشتن در فایل است در حالیکه کاربران دیگر فقط قادر به خواندن فایل هستند. این قابلیت برای داده فایل هایی که قابل خواندن برای همه باشد، اما فقط کاربر اصلی آن تغییر کند یک تنظیم رایج است.
1 |
644 (rw-r--r--) |
کاربر اصلی قادر به خواندن و نوشتن در فایل است . بقیه کاربران چنین حقی را ندارند. این قابلیت یک تنظیم برای داده های فایلی که برای کاربر اصلی باید به صورت خصوصی نگهداری شود قابل اجرا است.
1 |
600 (rw-------) |
نحوه استفاده از کامند “FIND”
در ادامه به نحوه استفاده از کامند find می پردازیم.
۴۴- برای پیدا کردن فایل ها براساس نام
1 |
find -name "File1" |
۴۵- پیدا کردن فایل ها براساس نام، بدون در نظر گرفتن فایلی با نام “File1”
1 |
find -iname "File1" |
۴۶- جستجوی فایل هایی که در انتهای آنها “conf.” است.
1 |
find /path -type f -name "*.conf" |
۴۷- پیدا کردن فایلهایی که اندازه آنها دقیقا ۵۰ بایت است.
1 |
find /path -size 50c |
۴۸- جستجوی فایل هایی که اندازه آنها کمتر از ۵۰ است.
1 |
find /path -size -50c |
۴۹- جستجوی فایل هایی که اندازه آنها بیشتر از ۷۰۰ مگابایت است.
1 |
find / -size +700M |
۵۰- جستجوی فایل هایی که روز قبل تغییر کرده اند.
1 |
find / -mtime 1 |
۵۱- جستجوی فایل هایی که کمتر از یک روز قبل به آنها دسترسی داشته ایم.
1 |
find / -atime -1 |
۵۲- پیدا کردن فایل هایی که اطلاعات زیادی داشته اند و بیشتر از سه روز قبل تغییر کرده اند.
1 |
find / -ctime +3 |
۵۳- جستجوی فایل هایی که کمتر از یک دقیقه قبل به آنها دسترسی داشته ایم.
1 |
find / -mmin -1 |
۵۴- در صورتی که بخواهیم یک مجموعه مشخص از مجوزها را با هم مطابقت دهیم.
1 |
find / -perm 644 |
۵۵- در صورتی که بخواهیم با حداقل مجوزها را مشخص کنیم.
1 |
find / -perm -644 |
دستورات لینوکس برای بررسی تعداد کلمات
۵۶- تعداد خطوط یک فایل را باز می گرداند.
1 |
wc -l file_name OR cat file_name | wc -l |
۵۷- بازگرداندن تعداد کلمات یک فایل
1 |
wc -w |
۵۸- نمایش تعداد بایت های یک فایل
1 |
wc -c |
۵۹- نمایش تعداد کاراکترهای یک فایل
1 |
wc -m |
۶۰- طولانی ترین خط یک فایل را باز می گرداند.
1 |
wc -L |
مقایسه کامندهای (TAR, TAR.GZ , TAR.BZ2 و ZIP )
پارامترهایی برای استفاده از کامندهای بالا
- c : یک فایل در بایگانی ایجاد می کند
- x : یک فایل در بایگانی را خارج می کند.
- v : فایل هایی را که در بایگانی پردازش می شوند را پردازش می کند.
- f : نام فایلهای بایگانی
- t : مشاهده محتوای فایل های بایگانی
- j : فیلتر بایگانی از طریق bzip2
- z : فیلتر بایگانی از طریق gzip
- r : اضافه و یا بروز رسانی فایل ها / دایرکتوری ها به فایل های بایگانی موجود
- w : بررسی فایل های بایگانی
کامند TAR
۶۱- ایجاد tar در فایل بایگانی
1 |
tar -cvf compress.tar /path/directory |
۶۲- لیست محتوای tar در فایل بایگانی
1 |
tar -tvf compress.tar |
۶۳- جهت Untar کردن فایل های بایگانی
1 |
tar -xvf compress.tar |
۶۴- Untar کردن tar فایل های بایگانی در یک دایرکتوری خاص
1 |
tar -xvf compress.tar -C /path/to diretory |
۶۵- Untar کردن یک tar در یک فایل tar
1 |
tar -xvf compress.tar file1.txt |
۶۶- Untar کردن چند tar در یک tar
1 |
tar -xvf compress.tar "file 1" "file 2" |
۶۷- خارج کردن گروهی از فایل ها با استفاده از Wildcard در بایگانی tar
1 |
tar -xvf compress.tar --wildcards '*.txt' |
۶۸- اضافه کردن فایل ها و دایرکتوری به فایل بایگانی tar
1 |
tar -rvf compress.tar file/dir |
کامند TAR.GZ
۶۹- ایجاد فایل tar.gz در فایل بایگانی
1 |
tar -cvzf compresstar.gz /path/directory |
۷۰- لیست محتوا در فایل بایگانی tar.gz
1 |
tar -tvf compress.tar.gz |
۷۱- Untar کردن فایل بایگانی tar.gz
1 |
tar -zxvf compress.tar.gz |
۷۲- Untar کردن فایل بایگانی tar.gz در یک دایرکتوری خاص
1 |
tar -zxvf compress.tar.gz -C /path/to diretory |
۷۳- Untar کردن یک فایل در فایل بایگانی tar.gz
1 |
tar -zxvf compress.tar.gz file1.txt |
۷۴- Untar کردن چند فایل در tar.gz
1 |
tar -zxvf compress.tar.gz "file 1" "file 2" |
۷۵- خارج کردن گروهی از فایل ها با استفاده از Wildcard در بایگانی tar.gz
1 |
tar -zxvf compress.tar.gz --wildcards '*.tzt' |
۷۶- اضافه کردن فایل یا دایرکتوری در tar.gz
1 |
tar -rvf compress.tar.gz file/dir |
کامند TAR.BZ2
۷۷- ایجاد فایل tar.bz2 در فایل بایگانی
1 |
tar -cvfj compress.tar.bz2 /path/directory |
۷۸- لیست محتوا در فایل بایگانی tar.bz2
1 |
tar -tvf compress.tar.bz2 |
۷۹- برای از فشرده خارج کردن فایل tar.bz2
1 |
tar -xvf compress.tar.bz2 |
۸۰- Untar کردن یک فایل در فایل tar.bz2
1 |
tar -jxvf compress.tar.bz2 file1.txt |
۸۱- Untar کردن چند فایل در فایل tar.bz2
1 |
tar -jxvf compress.tar.bz2 "file 1" "file 2" |
۸۲- خارج کردن گروهی از فایل ها با استفاده از Wildcard در بایگانی tar.bz2
1 |
tar -jxvf compress.tar.bz2 --wildcards '*.tzt' |
۸۳- اضافه کردن فایل یا دایرکتوری به tar.bz2
1 |
tar -rvf compress.tar.bz2 file/dir |
۸۴- تایید کردن tar, tar.gz و tar.bz2 به فایل بایگانی
1 |
tar -tvfW cmpress.tar |
کامندهای لینوکس برای ZIP
ZIP ( پسوند zip. اجباری نیست و فقط برای شناسایی فایل zip مفید است. )
۸۵- جهت فشرده کردن یک فایل یا پوشه دستور زیر را بکار ببرید.
1 |
zip compress.zip file1 file2 folder1 |
۸۶- دستور زیر جهت فشرده کردن فایل های شخصی در بایگانی zip بکار می رود.
1 |
zip compress.zip file1 file2 file3 |
فشرده سازی یک فایل ترفند و حقه است که بطور پیش فرض zip تمام مطالب پوشه مانند زیر پوشه ها و فایل ها را نمی پوشاند.
۸۷- برای فشرده سازی فایل در اولین مرحله، همانطور که در زیر نشان داده شده است از * استفاده کنید.
1 |
zip compress.zip Folder/* |
۸۸- اگر تمام زیر پوشه ها و فایلها در ۱ فایل وجود دارد، برای فشردهs سازی تمام محتوای آن فایل از پارامتر r- استفاده کنید.
1 |
zip -r compress.zip Folder |
۸۹- برای لیست کردن تمام فایل های ذخیره شده در یک فایل فشرده ، هرکدام از دستورات بالا می توانند مورد استفاده قرار بگیرند و نتایجی مشابه را باز گردانند.
1 |
unzip -l compress.zip |
1 |
less compress.zip |
1 |
zipinfo -1 compress.zip |
۹۰- حذف یک فایل بدون خارج کردن آن از حالت فشرده
1 |
zip -d compress.zip path/to/file |
۹۱- خارج کردن فایل از حالت فشرده
1 |
unzip compress.zip |
۹۲- خارج کردن یک دایرکتوری با استفاده از پارامتر d-
1 |
unzip compress.zip -d /destination |
۹۳- خارج کردن یک فایل از بایگانی
1 |
unzip compress.zip test.sh |
کامند های لینوکس با امتیازات ویژه برای روی فایل ها
۹۴- اجازه نوشتن بر روی یک فایل را تنها در حالت آپلود می دهد.
1 |
chattr +a file1 |
۹۵- بطور اتوماتیک به یک فایل توسط کرنل اجازه فشرده/ خروج از فشرده شدن می دهد.
1 |
chattr +c file1 |
۹۶- اطمینان حاصل می کند که در زمان پشتیبان گیری ، برنامه فایلها را نادیده می گیرد.
1 |
chattr +d file1 |
۹۷- یک فایل را غیر قابل تغییر می سازد که نمی توان آن را حذف و تغییر نام و یا غیر قابل لینک دادن کرد.
1 |
chattr +i file1 |
۹۸- اجازه حذف شدن را به یک فایل می دهد.
1 |
chattr +s file1 |
۹۹- اطمینان حاصل می کند که در صورتی که فایل اصلاح شده باشد، به صورت همزمان همراه با همگام سازی در آن نوشته می شود.
1 |
chattr +S file1 |
۱۰۰- اجازه می دهد که محتویات یک فایل را حتی در حالتی که آن کنسل شده است را بازیابی کند.
1 |
chattr +u file1 |
۱۰۱- ویژگی های خاص را در یک فایل/پوشه نشان می دهد.
1 |
lsattr file/folder |
کامندهای لینوکس برای دانستن اطلاعات سیستمی
۱۰۲- برای اینکه نام سیستم را بدانید کامند زیر را بکار ببرید:
1 |
uname |
۱۰۳- مشاهده نام هاست شبکه
1 |
uname -n |
۱۰۴- بدست آوردن اطلاعات پیرامون ورژن- کرنل
1 |
uname -v |
۱۰۵- بدست آوردن اطلاعات پیرامون کرنل منتشرشده
1 |
uname -r |
۱۰۶- چاپ نام سخت افزاری ماشین
1 |
uname -m |
۱۰۷-تمام اطلاعاتی که می تواند برای یکبار چاپ شود. دو کامند زیر اطلاعات یکسانی را باز می گرداند.
1 |
uname -a |
1 |
cat /proc/version |
۱۰۸- اطلاعاتی را در رابطه با نسخه ها و ورژن های لینوکس بر می گرداند.
1 |
cat /etc/*release* |
۱۰۹- اطلاعات در رابطه با پارتیشن های فایل سیستم را جمع آوری می کند.
1 |
fdisk -l |
۱۱۰- مشاهده فایل سیستم های مونت شده
1 |
mount |
۱۱۱- برای مشاهده اطلاعات درباره ساختار CPU، مانند شماره CPU، هسته، مدل، caches، و موضوعاتی از این قبیل ، دو کامند زیر نتایجی یکسان را باز می گرداند. دو دستور زیر خروجی های یکسانی را باز می گرداند.
1 |
lscpu |
1 |
cat /proc/cpuinfo |
۱۱۲- مشاهده اطلاعات درباره دستگاه های بلاگ شده
1 |
lsblk |
اطلاعات اضافی درباره اجزای سخت افزاری با استفاده از “DMIDECODE”
۱۱۳- برای چاپ اطلاعات درباره حافظه دستورات زیر می توانند خروجی هایی مشابه را بازگردانند.
1 |
dmidecode -t memory |
1 |
cat /proc/meminfo |
1 |
free or free -mt or free -gt |
۱۱۴- چاپ اطلاعات سیستم
1 |
dmidecode -t system |
۱۱۵- چاپ اطلاعات BIOS
1 |
dmidecode -t bios |
۱۱۶- چاپ اطلاعات پردازشگرها
1 |
dmidecode -t processor |
۱۱۷- برای منتشر کردن تمام اطلاعات سخت افزاری
1 |
dmidecode | less |
کامندهای شبکه
۱۱۸- دستور (PING (Packet Internet Groper، پکت ها را به آدرسی که برای اتصل بین دو گره مشخص کرده اید ارسال می کند.
1 |
ping IP/hostname |
۱۱۹- برای تنظیم پارامترهای رابط شبکه، از ifconfig استفاده می شود. اغلب از این کامند برای بررسی آدرس IP اختصاص یافته به سیستم استفاده می شود.
1 |
ifconfig -a |
۱۲۰- دستور traceroute مسیر پکت ها را در شبکه میزبان چاپ می کند. هاست مقصد یا IP یک پارامتر اجباری برای استفاده از این ابزار است.
1 |
traceroute website.com / IP |
۱۲۱- دستور route ابزاری است که برای نمایش یا اصلاح جدول مسیریابی استفاده می شود.
1 |
route |
۱۲۲- کامند (dig( Domain Information Groper یک ابزار انعطاف پذیر برای بازرسی سرورهای DNS است. با اینکار DNS ها بازرسی را انجام داده و در پاسخ نام سرورها را نمایش می دهند.
1 |
dig website.com |
۱۲۳- کامند whois برای دانستن نام دامنه است.
1 |
whois website.com |
۱۲۴- کامند Host برای پیدا کردن نام به IP و یا IP به نام بکار می رود.
1 2 |
host hostname host 1.2.3.4 |
۱۲۵- کامند telnet به هاست مقصد اتصال پیدا می کند. در صورتی که اتصال پورت از طریق پروتکل telnet برقرار باشد یعنی اتصال بین دو هاست به خوبی برقرار شده است.
1 |
telnet website.com 80 |
۱۲۶- کامند tracepath مسیر مقصد را در شبکه تعیین می کند. این کامند لیستی از هاست ها را که مسیر مقصد را تعیین می کند را فراهم میکند.
1 |
tracepath website.com |
۱۲۷- کامند nslookup برنامه ایی است که نام دامنه های سرورهای شبکه را پرس و جو می کند.
1 |
nslookup website.com |
۱۲۸- کامند netstat اجازه می دهد تا یک راه ساده برای بررسی هریک از اتصالات شبکه و سوکت های باز باشد. خروجی netstat زمانی که عملکرد وب سرور با مشکل مواجه شده باشد خیلی مفید است.
1 |
netstat |
۱۲۹- کامند scp اجازه می دهد که یک کپی از فایلها را گرفته و در هاست دیگری در شبکه بصورت امن قرار دهیم.
1 |
scp -r -P 22 (ssh port) user@source_hostname:/path/to/dir /destination/path |
۱۳۰- nmap کامندی قدرتمند است که پورت های باز در شبکه را بررسی می کند.
1 |
nmap hostname -p 80 |
کامندهای SSH
۱۳۱- برای اتصال به هاست با کاربر از کامند زیر استفاده کنید.
1 |
ssh user@host |
۱۳۲- اتصال به هاست با پورت
1 |
ssh -p port user@host |
۱۳۳- با اعمال fg در پیش زمینه و bg در پس زمینه ، کامندهای اخیر را متوقف می کند.
1 |
Ctrl+Z |
۱۳۴- همانند exit، از جلسه فعلی خارج می شود.
1 |
Ctrl+D |
۱۳۵- با کامند زیر یک کلمه در خط فعلی را می توان پاک کرد.
1 |
Ctrl+W |
۱۳۶- با کامند زیر کل خط را می توان پاک کرد.
1 |
Ctrl+U |
۱۳۷- فرمان اخیر را تایپ می کند. برای اینکار نیاز به تایپ اولین حرف از کامندی که در جستجوی آن هستید را دارید.
1 |
Ctrl+R |
۱۳۸- از جلسه فعلی خارج می شود.
1 |
exit |
نتیجه گیری
امیدواریم که این آموزش نیز برای شما مفید واقع شده باشد. با ما همراه بمانید.
پست مرتبط:
معرفی ۵ ابزار مفید جهت به یاد آوردن دستورات لینوکس