انجمن‌های فارسی اوبونتو

کمک و پشتیبانی => برنامه‌سازی => نویسنده: learner:~$ در 20 تیر 1402، 10:32 ب‌ظ

عنوان: دستور در شل (حل شد ) grep
ارسال شده توسط: learner:~$ در 20 تیر 1402، 10:32 ب‌ظ
سلام.
من با دستور grep به مشکل خوردم ](*,) ](*,) ](*,) نه از لحاظ نرم افزاری یا سخت افزاری بلکه با آپشن های زیادش.
به عنوان مثال من در دستور  xargs میخوام آپشن -I  رو ببینم؛درسته که با دستور xargs --help یا man xargs میشه این کار رو کرد اما اینطوری یک لیست بلند بالا میده که من اینو نمی خوام.
مد نظر من تقریبا چنین چیزی هست:
man xargs | grep "-I"




اما خروجی به این شکل هست :( :( :

sage: grep [OPTION]... PATTERNS [FILE]...
Try 'grep --help' for more information.




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

نکته: ایا ما برای این کار نیاز با  grep  داربم یا  باید از دستور های egrep;fgrep و ... استفاده کنیم؟؟
ممنون میشم راهنمایی کنید.
عنوان: پاسخ : دستور grep
ارسال شده توسط: 🇬🇧بریتانیای کبیر🇬🇧 در 20 تیر 1402، 10:41 ب‌ظ
الان جزوه دستم نیست بگم برای xargs , grep و less که دستور های خیلی ساده ایهم (xargs کمی گیرو گور داره)هستن بری کدوم قسمت اون آموزشو ببینی.
man صفحه هارو با less بالا میاره و در less نمیتونی از grep استفاده کنی ولی آره با help-- میشه از grep استفاده کرد.
xargs --help | grep '-l' --colour به دو روش برو تو less ,یا همون man  جست و جو کن.
/-lیا
?-lبا n و شیفت + n هم میتونی بری بلا پایین فقط این دو روش یکی هستن فقط بالا پایینشون فرق داره و من یادم نیست کدوم از بالاست یا پایین. با b یک صفحه بالا، با فاصله یک صفحه پایین.
باctrl + g هم وضعیتو نمایش و اسم فایلو نشون میده. با h هم راهنما.
با
 less -S fileهم کاری میکنی که در less خطوط دراز به پایین نرن و قابل فهم باشن.
عنوان: پاسخ : دستور در شلgrep
ارسال شده توسط: esmaeelE در 21 تیر 1402، 12:24 ق‌ظ
می‌تونید در manpage با میانبرهای vim جستجو کنید.

برای جستجوی انتخاب I-

/-I
عنوان: پاسخ : دستور در شلgrep
ارسال شده توسط: alend در 21 تیر 1402، 07:36 ق‌ظ
از دستور زیر می تونید استفاده کنید:

grep -e "-I"
عنوان: پاسخ : دستور در شلgrep
ارسال شده توسط: learner:~$ در 21 تیر 1402، 08:27 ق‌ظ
از دستور زیر می تونید استفاده کنید:

grep -e "-I"
آپشن -e چیکار میکنه؟؟؟ میشه توضیح بدید؟؟ من رفتم همین آپشن رو خوندم اما متوجه نشدم
عنوان: پاسخ : دستور در شلgrep
ارسال شده توسط: Dragon- در 21 تیر 1402، 04:29 ب‌ظ
اگه یه صفحع man رو باز کردید می‌تونید یه علامت / بذارید و متنی رو بنویسید که دنبالش می‌گردید.
با فشار دادن n می‌تونید نتیجه بعدی جست‌وجو رو ببینید و با N نتیجه قبلی رو.

آپشن -e چیکار میکنه؟؟؟ میشه توضیح بدید؟؟ من رفتم همین آپشن رو خوندم اما متوجه نشدم

باعث میشه grep سعی نکنه I- رو به عنوان یه آپشن تفسیر کنه. اون چیزی که شما توی ارسال اول نوشتید باعث میشه grep اون I- رو به عنوان یه آپشن در نظر بگیره نه چیزی که باید دنبالش بگرده.

اینجوری هم میشه از grep برای پیدا کردن I- استفاده کرد.
man xargs | grep -- '-I'

اگه صفحات man طولانی هستند و بیشتر می‌]واهید چنتا مثال کاربردی ببینید، tldr هست.
 
با دستور apropos هم می‌تونید دنبال یه عبارت بین اسم و توضیح کوتاه صفحات man بگردید و ببینید کدوم صفحات شامل این عبارت هست.
عنوان: پاسخ : دستور در شلgrep
ارسال شده توسط: learner:~$ در 21 تیر 1402، 04:41 ب‌ظ
خیلی ممنونم
عنوان: پاسخ : دستور در شلgrep
ارسال شده توسط: alend در 22 تیر 1402، 06:46 ق‌ظ
از دستور زیر می تونید استفاده کنید:

grep -e "-I"
آپشن -e چیکار میکنه؟؟؟ میشه توضیح بدید؟؟ من رفتم همین آپشن رو خوندم اما متوجه نشدم

از این دستور می تونید استفاده کنید  ;D

man grep | grep -A2 -we "-e"


       -e PATTERNS, --regexp=PATTERNS[code]
              Use  PATTERNS  as  the  patterns.   If this option is used multiple times or is combined with the -f (--file) option,
              search for all patterns given.  This option can be used to protect a pattern beginning with “-”.
--
              Obtain patterns from FILE, one per line.  If this option is used multiple times or is combined with the -e (--regexp)
              option, search for all patterns given.  The empty file contains zero patterns, and therefore matches nothing.


[/code]
عنوان: پاسخ : دستور در شل (حل شد ) grep
ارسال شده توسط: learner:~$ در 22 تیر 1402، 10:13 ق‌ظ
اینم عالیه