📄 محتوای کامل
مقدمه
این lsدستور یک ابزار مهم است که برای فهرست کردن دایرکتوریها و نمایش اطلاعات مربوط به فایلهای موجود و ویژگیها استفاده میشود. همچنین به عنوان list( ls) شناخته میشود و شما را قادر میسازد تا به طور موثر در یک سیستم فایل حرکت کنید.
این مقاله نحوه استفاده از lsدستور در لینوکس برای انجام وظایف فهرست کردن دایرکتوریها را توضیح میدهد.
lsسینتکس دستور
در زیر سینتکس دستور پایه آمده است ls:
$ ls [options] [file/directory]
در دستور فوق، [options]شامل پرچمهای اختیاری است که رفتار دستور را تغییر میدهند و [file/directory]فایل یا دایرکتوری مورد نظر برای لیست کردن را مشخص میکنند. اگر هیچ فایل یا دایرکتوری مشخص نشده باشد، lsمحتویات دایرکتوری کاری را نمایش میدهد.
lsگزینههای فرمان
| گزینه | توضیحات |
|---|---|
-l | لیست طولانی. اطلاعات دقیقی در مورد فایلها و دایرکتوریها نمایش میدهد. |
-a | همه فایلها. فهرست کردن همه فایلها، شامل فایلها و دایرکتوریهای مخفی. |
-t | مرتبسازی فایلها و دایرکتوریها بر اساس آخرین زمان تغییر |
-r | ترتیب معکوس. ترتیب پیشفرض فهرستبندی را برعکس میکند. |
-S | فایلها و دایرکتوریها را بر اساس اندازهشان مرتب میکند. |
-R | لیست بازگشتی. فایلها و دایرکتوریها، شامل زیر دایرکتوریها را به صورت بازگشتی لیست میکند. |
-i | Inode. شماره شاخص (inode) هر فایل و دایرکتوری را نمایش میدهد. |
-g | گروه. به جای مالک، مالکیت گروهی فایلها و دایرکتوریها را نمایش میدهد. |
-h | فرمت قابل خواندن توسط انسان. اندازه فایلها را با فرمت قابل خواندن توسط انسان چاپ میکند (مثلاً، ۱K، ۲۳۴M، ۲G). |
-d | فهرست راهنما. خود فهرستها را فهرست میکند، نه محتوای آنها را. |
--color | رنگ. کدگذاری رنگی را بر اساس نوع فایل به خروجی اضافه میکند. |
مثالهای عملی از lsفرمان
- فهرست کردن فایلهای موجود در دایرکتوری کاری شما. کنسولکپی
$ ls
دستور بالا تمام فایلهای موجود در دایرکتوری کاری شما را به ترتیب حروف الفبا فهرست میکند.
خروجی:
- فهرست طولانی دایرکتوری کاری برای مشاهده اطلاعات دقیق در مورد فایلها و دایرکتوریها. کنسولکپی
$ ls -l
دستور بالا تمام محتویات دایرکتوری را به همراه اطلاعات دقیق در مورد هر فایل و زیر دایرکتوری شامل مجوزها، مالک، گروه، اندازه و زمان اصلاح فهرست میکند.
خروجی:
- تمام فایلهای موجود در دایرکتوری کاری، شامل فایلهای مخفی، را فهرست میکند. کنسولکپی
$ ls -a
دستور بالا تمام فایلها و دایرکتوریهای موجود در دایرکتوری کاری شما، از جمله فایلها و دایرکتوریهای مخفی را فهرست میکند.
خروجی:
- مرتبسازی فایلها بر اساس آخرین زمان تغییر کنسولکپی
$ ls -lt
دستور بالا فایلها و دایرکتوریها را بر اساس آخرین زمان تغییر به صورت نزولی مرتب میکند.
خروجی:
- تمام فایلها را با اندازههای مربوطه در قالبی قابل خواندن توسط انسان نمایش دهید. کنسولکپی
$ ls -lh
دستور بالا، اندازه تمام فایلهای دایرکتوری را در قالبی قابل خواندن توسط انسان فهرست میکند تا تفسیر آن آسانتر شود.
خروجی:
- فایلها و دایرکتوریها را به صورت بازگشتی فهرست میکند. کنسولکپی
$ ls -R
دستور فوق به صورت بازگشتی تمام فایلها و دایرکتوریها، از جمله زیر دایرکتوریها را فهرست میکند.
خروجی:
- نمایش شمارههای inode تمام فایلها و دایرکتوریها. کنسولکپی
$ ls -i
دستور بالا شمارههای inode را برای تمام فایلهای موجود در دایرکتوری کاری شما نمایش میدهد.
خروجی:
- نمایش مالکیت گروهی فایلها و دایرکتوریها. کنسولکپی
$ ls -g
دستور بالا مالکیت گروهی فایلها و دایرکتوریها را در دایرکتوری کاری شما نمایش میدهد.
خروجی:
- تمام دایرکتوریها را فهرست کنید و محتویات را حذف کنید. کنسولکپی
$ ls -d */
دستور بالا دایرکتوریها را بدون ذکر محتویات موجود فهرست میکند و یک اسلش
/به نتیجه هر دایرکتوری اضافه میکند.خروجی:
- فایلها را با گزینههای ترکیبی فهرست کنید تا جزئیات بیشتری را با خروجی قابل خواندن توسط انسان مشاهده کنید. کنسولکپی
$ ls -lhS
دستور بالا گزینههای فهرستبندی طولانی
-l، خوانا برای انسان-hو مرتبسازی را-Sبرای نمایش اطلاعات دقیق ترکیب میکند.خروجی:
- فهرست کردن فایلها با کدگذاری رنگی کنسولکپی
$ ls --color
دستور بالا بر اساس نوع فایلها، کدگذاری رنگی را به خروجی اضافه میکند تا انواع فایلها و دایرکتوریها را از هم متمایز کند.
خروجی:
- فهرست کردن فایلها با الگوی خاص. کنسولکپی
$ ls *.txt
دستور بالا تمام فایلهای دارای
.txtپسوند مورد نظر را در دایرکتوری کاری شما فهرست میکند.خروجی:
- نمایش اندازه دایرکتوریها کنسولکپی
$ du -sh */
دستور بالا
lsباdu(disk usage) ترکیب میشود تا فهرست دایرکتوریها و اندازههای مربوط به آنها را در قالبی قابل خواندن توسط انسان فهرست کند.خروجی:
مثالهای پیشرفته و کاربردهای ترکیبی
- تمام فایلها را با مجوزها و مهرهای زمانی مربوطه فهرست کنید. کنسولکپی
$ ls -alt
دستور بالا تمام فایلهای دایرکتوری را فهرست میکند و خروجی را بر اساس آخرین زمان تغییر مرتب میکند.
خروجی:
- فایلها را با inodeها و اندازههای قابل خواندن توسط انسان فهرست کنید. کنسولکپی
$ ls -lih
دستور بالا گزینههای
-l،-i، و-hرا برای نمایش اطلاعات دقیق، شمارههای inode و اندازههای قابل خواندن توسط انسان ترکیب میکند.خروجی:
- فایلها را فهرست کنید و خروجی را برای
grepفیلتر کردن فایلهای خاص به آن ارسال کنید. کنسولکپی$ ls -l | grep 'filename'
دستور بالا فایلها را در قالبی طولانی فهرست میکند و خروجی را به
grepنتایجی که باfilenameرشته مطابقت دارند، لولهکشی میکند.خروجی:
- فهرست دایرکتوریهایی که با یک الگوی خاص مطابقت دارند. کنسولکپی
$ ls -d */ | grep 'pattern'
دستور بالا دایرکتوریهایی را که با یک الگوی خاص مطابقت دارند، فهرست میکند.
خروجی:
- فایلها و دایرکتوریهای موجود در دایرکتوری کاری را فهرست کرده و بشمارید. کنسولکپی
$ ls | wc -l
دستور بالا محتویات دایرکتوری را فهرست میکند و خروجی را برای
wc -lشمارش تعداد فایلهای موجود در دایرکتوری به pipe ارسال میکند.خروجی:
- فهرست کردن و مرتبسازی فایلها بر اساس اندازه به ترتیب نزولی. کنسولکپی
$ ls -lS
دستور بالا فایلها را در قالب طولانی فهرست میکند و آنها را بر اساس اندازه به ترتیب نزولی مرتب میکند.
خروجی:
- فقط فایلها را فهرست کنید (نه دایرکتوریها). کنسولکپی
$ ls -p | grep -v /
دستور بالا تمام فایلها و دایرکتوریها را فهرست میکند و خروجی را به مسیر زیر ارسال میکند تا
grep -v /دایرکتوریها را مستثنی کند.خروجی:
- نمایش فایلهای تغییر یافته در ۷ روز گذشته کنسولکپی
$ find . -type f -mtime -7 | xargs ls -l
دستور بالا تمام فایلهای تغییر یافته در ۷ روز گذشته را پیدا کرده و آنها را در قالب طولانی فهرست میکند.
خروجی:
نتیجه گیری
lsشما از این دستور در لینوکس برای فهرست کردن محتویات دایرکتوری، پیمایش سیستمهای فایل و مدیریت فایلها و دایرکتوریها استفاده کردهاید . برای گزینههای بیشتر دستور، man lsدستور را اجرا کنید تا lsصفحه راهنما را مشاهده کنید.