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

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید


ارائه ۲۴٫۱۰ اوبونتو منتشر شد 🎉

نویسنده موضوع: مشکل با اپشن exec- در دستور find  (دفعات بازدید: 1589 بار)

0 کاربر و 1 مهمان درحال مشاهده موضوع.

آفلاین alieblice2

  • Sr. Member
  • *
  • ارسال: 280
مشکل با اپشن exec- در دستور find
« : 11 شهریور 1390، 01:20 ب‌ظ »
سلام دوستان
یک مشکل با اپشن exec- دستور find هستش که اون جوری که باید عمل نمیکنه
من وقتی دستور زیر رو میزنم  (( همون طور که معلومه دستورو در دایرکتوری sisi اجرا کردم ))
alieblice@~/Desktop/sisi$ find -mindepth 2 -maxdepth 6 -iname "test.ogg" -exec mv {} 123.ogg \;
دستور با موفقیت فایل مورد نظر رو پیدا میکنه و تغییر اسم هم میده ولی اونو به دایرکتوری sisi هم انتقال میده . (( در هر دایرکتوری که دستور اجرا بشه به همون دایرکتوری انتقال میده  )) در حالی که من نمیخام انتقال بده و براش تعیین هم نکردم که انتقال بده

پیشاپیش ممنون

آفلاین سید وحید رضا برهانی

  • High Hero Member
  • *
  • ارسال: 1668
  • جنسیت : پسر
  • یک مخالف نرم افزار اوپن سورس
پاسخ به: مشکل با اپشن exec- در دستور find
« پاسخ #1 : 11 شهریور 1390، 10:06 ب‌ظ »
سلام
چرا(یعنی آره) دیگه ! وقتی برای 123.ogg چیزی مشخص نکردی یعنی توی همون دایرکتوری که اجرا می شه بریزه (-exec ربطی به خود find نداره یک جوری مثل xargs رفتار می کنه! ) البته الان هر چی فکر می کنم که چطوری باید طوی  همون پوشه mv کنه ، چیزی به ذهنم نمی رسه (البته می تونی توی یک فایل بریزی بعد mv کنی ولی یک راه زیبا و اصولی و یک خطی ندارم)
نرم افزاری که نشه سیخ انگولکش کرد (به هر دلیلی چه به‌خاطر قانون و چه پیچیدگی یا توسعه سریع)نرم افزار آزاد نیست حالا مهم نیست چه بنیادی یا چه افرادی اون رو نوشته باشند یا GPL باشه یانه!
نرم افزار آزاد یک جنبش هست نه یک تیکه کاغذ پاره(GPL)
حق فهمیدن از حق خوندن مهمتره

آفلاین HojjatJafary

  • Full Member
  • *
  • ارسال: 107
پاسخ به: مشکل با اپشن exec- در دستور find
« پاسخ #2 : 11 شهریور 1390، 11:55 ب‌ظ »
سلام
اگه فقط می خوای اسم فایل رو عوض کنی چرا از دستور rename استفاده نمی کنی؟ mv خودش یه جورایی move می کنه دیگه!

آفلاین alieblice2

  • Sr. Member
  • *
  • ارسال: 280
پاسخ به: مشکل با اپشن exec- در دستور find
« پاسخ #3 : 12 شهریور 1390، 12:26 ب‌ظ »
خودش این جوری گفته
# find -inum 16187430 -exec mv {} new-test-file-name \;
http://www.thegeekstuff.com/2009/03/15-practical-linux-find-command-examples/
http://www.thegeekstuff.com/2009/06/15-practical-unix-linux-find-command-examples-part-2/
منم همون جوری میزنم ولی کار نمیکنه البته برایه انتقال فایل درست کار میکنه میگم ببر تو home دایرکتوری میبره
با rename هم تست میکنم جوابشو میزارم

آفلاین سید وحید رضا برهانی

  • High Hero Member
  • *
  • ارسال: 1668
  • جنسیت : پسر
  • یک مخالف نرم افزار اوپن سورس
پاسخ به: مشکل با اپشن exec- در دستور find
« پاسخ #4 : 12 شهریور 1390، 05:06 ب‌ظ »
سلام
می دونی این اپشن به صورت اسکریپتی کار نمی کنه (شاید من بلدنیستم)(یعنی به دفعات اجرا کنه -برای هر یافته یک بار اجرا کنه)بلکه کل فایلها رو پیدا می کنه و به اون برنامه می ده مثلا اینطوری می شه
mv ./test.ogg ./1/test.ogg ./2/test.ogg 123.ogg
که خب چون در mv آخرین پارامتری که ارسال می شه به طور پیشفرض مقصد هست برای همین همه ی اون فایلها رو در مسیز جاری می ریزه
نرم افزاری که نشه سیخ انگولکش کرد (به هر دلیلی چه به‌خاطر قانون و چه پیچیدگی یا توسعه سریع)نرم افزار آزاد نیست حالا مهم نیست چه بنیادی یا چه افرادی اون رو نوشته باشند یا GPL باشه یانه!
نرم افزار آزاد یک جنبش هست نه یک تیکه کاغذ پاره(GPL)
حق فهمیدن از حق خوندن مهمتره

آفلاین alieblice2

  • Sr. Member
  • *
  • ارسال: 280
پاسخ به: مشکل با اپشن exec- در دستور find
« پاسخ #5 : 13 شهریور 1390، 02:00 ب‌ظ »
من کار با این rename رو نمیفهمم چه جوریه این اررورو میده
alieblice@~/Desktop/sisi$ rename pic pic1
Bareword "pic" not allowed while "strict subs" in use at (eval 1) line 1.

این دستور rename قابلیت تغییر نام گروهی هم داره ؟

آفلاین HojjatJafary

  • Full Member
  • *
  • ارسال: 107
پاسخ به: مشکل با اپشن exec- در دستور find
« پاسخ #6 : 13 شهریور 1390، 08:18 ب‌ظ »
اولین آرگومان دستور rename قانونی است که می خواهید فایلهایتان طبق آن تغییر کند آرگومان دوم هم فایلهایی است که باید تغییر داده شود.