RECOLLINDEX(1) General Commands Manual RECOLLINDEX(1)

recollindex - دستور نمایه‌سازی برای سامانه جستجوی تمام‌متن Recoll

recollindex -h
recollindex [ -z|-Z ] [ -k ] [ --nopurge ] [ -P ] [ --diagsfile <diagpath> ]
recollindex -m [ -w <secs>] [ -D ] [ -O ] [ -x ] [ -C ] [ -n|-k ]
recollindex -i [ -Z -k -f -P ] [<path [path ...]>]
recollindex -r [ -Z -K -e -f ] [ -p pattern ] <dirpath>
recollindex -e [<path [path ...]>]
recollindex -l|-S|-E
recollindex -s <lang>
recollindex --webcache-compact
recollindex --webcache-burst <destdir>
recollindex --notindexed [path [path ...]]

ایجاد یا به‌روزرسانی نمایه Recoll.

چندین حالت عملیاتی وجود دارد. تمامی حالت‌ها از گزینه اختیاری -c <cfgdir> برای تعیین نام پوشه پیکربندی پشتیبانی می‌کنند که مقدار پیش‌فرض یا متغیر محیطی $RECOLL_CONFDIR (یا به‌طور پیش‌فرض $HOME/.recoll) را بازنویسی می‌کند.

حالت عادی، مجموعه‌ای از پرونده‌های مشخص‌شده در پیکربندی را نمایه می‌کند. این کار نمایه را با پرونده‌هایی که از زمان آخرین اجرا تغییر کرده‌اند، به‌صورت افزایشی به‌روزرسانی می‌کند. اگر گزینه -z داده شود، نمایه قبل از شروع پاک خواهد شد. اگر گزینه -Z داده شود، نمایه بازنشانی نمی‌شود، اما تمام پرونده‌ها به عنوان موارد نیازمند نمایه‌سازی مجدد در نظر گرفته می‌شوند (بازنشانی درجا).

recollindex پرونده‌هایی را که قبلاً نمایه‌سازی آن‌ها ناموفق بوده است (برای نمونه به دلیل نبود یک برنامه کمکی) دوباره پردازش نمی‌کند. اگر گزینه -k داده شود، recollindex دوباره برای پردازش تمام پرونده‌های ناموفق تلاش خواهد کرد. لطفاً توجه داشته باشید که recollindex همچنین در صورتی که اسکریپت بررسی کمکی تعریف‌شده در متغیر پیکربندی «checkneedretryindexscript» مشخص کند، ممکن است برای پردازش مجدد پرونده‌های ناموفق اقدام کند.

گزینه --nopurge پاک‌سازی عادی اسناد حذف‌شده از نمایه را غیرفعال می‌کند. این مورد می‌تواند در شرایط خاص مفید باشد (زمانی که مشخص است بخشی از اسناد به‌طور موقت در دسترس نیست).

گزینه -P مرحله پاک‌سازی را اجباری می‌کند. این گزینه فقط در صورتی کاربرد دارد که پارامتر idxnoautopurge در پرونده پیکربندی تنظیم شده باشد.

اگر گزینه --diagsfile داده شود، مسیر مشخص‌شده به عنوان پارامتر خالی شده و اطلاعات عیب‌یابی نمایه‌سازی در آن نوشته خواهد شد. هر خط در این پرونده شامل نوع عیب‌یابی (دلیل نمایه‌نشدن پرونده)، مسیر پرونده و احتمالاً یک بخش اطلاعات تکمیلی خواهد بود که بسته به مشکل می‌تواند نوع MIME یا مسیر داخلی آرشیو باشد. در حال حاضر انواع عیب‌یابی زیر تعریف شده‌اند:

Skipped : مسیر با یکی از موارد skippedPaths یا skippedNames مطابقت دارد.
NoContentSuffix : پسوند نام پرونده در فهرست noContentSuffixes یافت شده است.
MissingHelper : یک برنامه کمکی مفقود است.
Error : خطای عمومی (گزارش‌ها را بررسی کنید).
NoHandler : هیچ گرداننده‌ای برای این نوع MIME تعریف نشده است.
ExcludedMime : نوع MIME بخشی از فهرست excludedmimetypes است.
NotIncludedMime : فهرست onlymimetypes خالی نیست و نوع MIME در آن قرار ندارد.

گزینه -R امکان تعیین یک پرونده موقت برای نوشتن پیام‌های خطا در صورت شکست نمایه‌سازی را فراهم می‌کند. همین پیام‌ها به stderr نیز ارسال می‌شوند و این گزینه بیشتر برای واسط گرافیکی کاربر (GUI) جهت نمایش پنجره خطای بازشو کاربرد دارد.

اگر گزینه -m داده شود، recollindex برای پایش بلادرنگ با استفاده از بسته پایش سیستم پرونده‌ای که برای آن پیکربندی شده است (inotify در لینوکس، gamin در xBSD، fsevents در macOS و ReadDirectoryChanges در ویندوز) آغاز به کار می‌کند. برنامه در حالت عادی از ترمینال کنترل‌کننده جدا شده و به صورت یک دیمن درمی‌آید. اگر گزینه -D داده شود، برنامه در پیش‌زمینه باقی خواهد ماند. از گزینه -w <seconds> می‌توان برای تعیین مدت زمان خواب برنامه پیش از شروع نمایه‌سازی استفاده کرد. مقدار پیش‌فرض ۶۰ است. دیمن به طور عادی نشست X11 را پایش می‌کند و هنگام بازنشانی آن خارج می‌شود. این رفتار را می‌توان با گزینه -x غیرفعال کرد. می‌توانید از گزینه -n برای نادیده گرفتن مرحله افزایشی اولیه که معمولاً پیش از شروع پایش انجام می‌شود استفاده کنید. هنگامی که پایش آغاز شد، دیمن پیکربندی را پایش کرده و در صورت اعمال هر تغییری از ابتدا مجدداً راه‌اندازی می‌شود. می‌توانید این قابلیت را با گزینه -C غیرفعال کنید. گزینه -O نیز فرایند را در پیش‌زمینه نگه می‌دارد و علاوه بر آن در صورت ناپدید شدن فرایند والد، باعث خروج فرایند می‌شود.

recollindex -i پرونده‌های مجزا را در نمایه درج می‌کند. پایگاه‌های داده ریشه‌یابی کلمات و aspell به‌روزرسانی نخواهند شد. متغیرهای پیکربندی skippedPaths و skippedNames اعمال می‌شوند تا برخی پرونده‌ها نادیده گرفته شوند. با تعیین گزینه -f می‌توانید به recollindex اعلام کنید که skippedPaths و skippedNames را نادیده بگیرد. این کار امکان انتخاب کاملاً سفارشی پرونده‌ها را برای یک زیردرخت معین فراهم می‌کند، به این ترتیب که پوشه اصلی را به skippedPaths اضافه کرده و از هر ابزار سفارشی برای تولید فهرست پرونده‌ها استفاده کنید (مانند ابزاری از سامانه کنترل نسخه). در صورت اجرا به این شیوه، نمایه‌ساز در حالت عادی مرحله پاک‌سازی پرونده‌های حذف‌شده را انجام نمی‌دهد، زیرا نمی‌تواند از مشاهده تمام پرونده‌های موجود اطمینان داشته باشد. می‌توانید مرحله پاک‌سازی را با گزینه -P اجباری کنید.

recollindex -e داده‌های پرونده‌های مجزا را از نمایه پاک می‌کند. پایگاه‌های داده ریشه‌یابی کلمات به‌روزرسانی نخواهند شد.

گزینه‌های -i و -e می‌توانند با هم ترکیب شوند. این کار ابتدا پاک‌سازی و سپس نمایه‌سازی را انجام می‌دهد.

در گزینه‌های -i یا -e اگر هیچ نام پرونده‌ای در خط فرمان داده نشود، از stdin خوانده خواهند شد، بنابراین برای نمونه می‌توانید دستور زیر را اجرا کنید:

find /path/to/dir -print | recollindex -e -i

تا نمایه‌سازی مجدد یک درخت پوشه اجباری شود (که باید در محدوده سیستم پرونده تعریف‌شده توسط topdirs در recoll.conf وجود داشته باشد). تقریباً همین کار را می‌توانید با دستور زیر نیز انجام دهید:

find /path/to/dir -print | recollindex -Z -i

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

recollindex -r بیشتر شبیه -i عمل می‌کند، اما پارامتر آن یک پوشه واحد است که به صورت بازگشتی به‌روزرسانی خواهد شد. این کار در اصل چیزی فراتر از find topdir | recollindex -i نیست، اما هنگام فراخوانی از برنامه‌ای دیگر ممکن است استفاده از آن راحت‌تر باشد. این گزینه پرونده‌های ناموفق را به‌طور پیش‌فرض دوباره امتحان می‌کند؛ برای تغییر این حالت از گزینه -K استفاده کنید. یک یا چند گزینه -p می‌تواند برای تعیین الگوهای انتخابی پوسته (مانند: ‎*.pdf) استفاده شود.

recollindex -l فهرستی از نام‌های ریشه‌یاب‌های زبان موجود را نمایش می‌دهد.

recollindex -s پایگاه داده ریشه‌یابی را برای زبان مشخص‌شده می‌سازد که ممکن است در فهرست پرونده پیکربندی باشد یا نباشد. اگر زبان بخشی از پیکربندی نباشد، پایگاه داده ریشه‌یابی در پایان اجرای عادی بعدی نمایه‌سازی حذف خواهد شد. می‌توانید فهرست نام‌های ریشه‌یاب را از دستور recollindex -l به دست آورید. توجه داشته باشید که این گزینه بیشتر برای کاربردهای آزمایشی است؛ روش معمول برای افزودن زبان ریشه‌یابی، تنظیم آن در پیکربندی، چه با ویرایش «recoll.conf» یا با استفاده از پنجره تنظیمات نمایه‌سازی در واسط گرافیکی است.
در زمان نگارش این سند، زبان‌های زیر شناسایی می‌شوند (برگرفته از stem.h در Xapian):

  • danish (دانمارکی)
  • dutch (هلندی)
  • english (انگلیسی) نگارش ۲۰۰۲ مارتین پورتر از ریشه‌یاب خود
  • english_lovins ریشه‌یاب لاوینز
  • english_porter ریشه‌یاب پورتر همان‌گونه که در مقاله ۱۹۸۰ او توصیف شده است
  • finnish (فنلاندی)
  • french (فرانسوی)
  • german (آلمانی)
  • italian (ایتالیایی)
  • norwegian (نروژی)
  • portuguese (پرتغالی)
  • russian (روسی)
  • spanish (اسپانیایی)
  • swedish (سوئدی)

recollindex -S نمایه آوایی/املایی را بازسازی می‌کند. این ویژگی از بسته aspell استفاده می‌کند که باید روی سیستم نصب باشد.

recollindex -E وجود topdirs و سایر مسیرهای مرتبط در پرونده پیکربندی را بررسی می‌کند (برای کمک به شناسایی خطاهای تایپی).

recollindex --webcache-compact فضای هدررفته توسط نمونه‌صفحات حذف‌شده در حافظه نهان وب (Web cache) را بازیابی می‌کند. این عملیات ممکن است به‌طور موقت به دو برابر فضای دیسک مورد استفاده حافظه نهان وب نیاز داشته باشد.

recollindex --webcache-burst <destdir> تمام مدخل‌ها را از حافظه نهان وب استخراج کرده و در پرونده‌هایی درون <destdir> ایجاد می‌کند. هر مدخل حافظه نهان به صورت دو پرونده، برای داده‌ها و فراداده‌ها (metadata) استخراج می‌شود.

recollindex --notindexed [path [path ...]] هر مسیر را بررسی کرده و مواردی را که در نمایه وجود ندارند (با پیشوند «ABSENT»)، یا باعث خطای نمایه‌سازی شده‌اند (با پیشوند «ERROR») چاپ می‌کند. اگر هیچ مسیری در خط فرمان داده نشود، دستور آن‌ها را سطر به سطر از stdin می‌خواند. مسیرها باید مطلق و مطابق با موارد موجود در نمایه باشند؛ هیچ تلاشی برای تفسیر هوشمندانه آن‌ها انجام نمی‌شود.

قطع کردن دستور: از آنجا که نمایه‌سازی گاهی ممکن است زمان زیادی ببرد، می‌توان دستور را با ارسال سیگنال وقفه (Ctrl-C، SIGINT) یا خاتمه (SIGTERM) متوقف کرد. خروج فرایند ممکن است کمی طول بکشد، زیرا نیاز است نمایه را به‌درستی تخلیه کرده و ببندد. این کار از طریق واسط گرافیکی recoll نیز امکان‌پذیر است (گزینه منو: File/Stop_Indexing). پس از چنین وقفه‌ای، نمایه تا حدی ناسازگار خواهد بود، زیرا برخی عملیات که معمولاً در پایان مرحله نمایه‌سازی انجام می‌شوند، نادیده گرفته شده‌اند (برای نمونه، پایگاه‌های داده ریشه‌یابی و غلط‌یابی املایی موجود نبوده یا قدیمی خواهند بود). برای بازگرداندن سازگاری، کافی است نمایه‌سازی را در زمان دیگری دوباره شروع کنید. نمایه‌سازی از نقطه توقف از سر گرفته خواهد شد (تمام درخت پرونده‌ها پیمایش می‌شود، اما پرونده‌هایی که تا زمان وقفه نمایه شده‌اند و نمایه آن‌ها هنوز به‌روز است، نیازی به نمایه‌سازی مجدد نخواهند داشت).

recoll(1) recoll.conf(5)

8 January 2006