NOTMUCH-INSERT(1) notmuch NOTMUCH-INSERT(1)

notmuch-insert - افزودن یک پیام به maildir و پایگاه‌داده notmuch

notmuch insert [option ...] [+<tag>|-<tag> ...]

دستور notmuch insert یک پیام را از ورودی استاندارد خوانده و آن را به دایرکتوری maildir مشخص‌شده توسط گزینه پیکربندی database.mail_root <#nmconfig-database.mail_root> تحویل می‌دهد، سپس پیام را در پایگاه‌داده notmuch ادغام می‌کند. این دستور جایگزینی برای استفاده از یک ابزار جداگانه جهت تحویل پیام و سپس اجرای notmuch-new <#notmuch-new-1> پس از آن است.

پیام جدید ابتدا با برچسب‌های مشخص‌شده در گزینه پیکربندی new.tags <#nmconfig-new.tags> و سپس طبق عملیات مشخص‌شده در خط فرمان برچسب‌گذاری خواهد شد: برچسب‌های دارای پیشوند '+' اضافه شده و برچسب‌های دارای پیشوند '-' حذف می‌شوند.

اگر پیام جدید تکراری از یک پیام موجود در پایگاه‌داده باشد (شناسه Message-ID یکسانی داشته باشد)، به پوشه maildir و پایگاه‌داده notmuch اضافه می‌شود، اما برچسب‌های آن تغییر نخواهند کرد.

دستور insert از قلاب‌ها (hooks) پشتیبانی می‌کند. برای جزئیات بیشتر درباره قلاب‌ها به notmuch-hooks <#notmuch-hooks-5> مراجعه کنید.

آرگومان‌های گزینه‌ها باید پیش از هر آرگومان عملیات برچسب قرار گیرند. گزینه‌های پشتیبانی‌شده برای insert عبارتند از:

پیام را به پوشه مشخص‌شده، به‌صورت نسبی نسبت به دایرکتوری سطح بالایی که توسط مقدار database.mail_root <#nmconfig-database.mail_root> تعیین شده است، تحویل می‌دهد. مقدار پیش‌فرض یک رشته خالی است که به معنای تحویل به دایرکتوری سطح بالا می‌باشد.
در صورت عدم وجود پوشه مشخص‌شده توسط گزینه --folder، تلاش می‌کند آن را ایجاد کند. در غیر این صورت، برای موفقیت‌آمیز بودن تحویل نامه، پوشه باید از قبل وجود داشته باشد.
در صورت شکست در نمایه‌سازی (indexing)، فایل پیام را حفظ می‌کند و در صورت عدم موفقیت در اعمال برچسب‌ها یا همگام‌سازی پرچم‌های maildir، پیام را در حالت نمایه‌شده نگه می‌دارد. این خطاها نادیده گرفته شده و وضعیت خروج 0 برای نشان دادن تحویل موفق نامه بازگردانده می‌شود.
از اجرای قلاب‌ها (hooks) جلوگیری می‌کند.
هنگام نوشتن نامه در صندوق پستی (mailbox)، به کاربران دیگر به جز کاربر فعلی اجازه خواندن آن را می‌دهد. توجه داشته باشید که این گزینه umask را لغو یا بازنویسی نمی‌کند. به‌طور پیش‌فرض، نامه تحویل‌داده‌شده فقط توسط کاربر فعلی قابل خواندن است.
اگر true باشد و پیام رمزگذاری شده باشد، در حین نمایه‌سازی تلاش می‌کند پیام را رمزگشایی کرده و هر کلید نشست (session key) کشف‌شده را ذخیره (stash) کند. اگر auto باشد و notmuch از قبل یک کلید نشست برای پیام بداند، با استفاده از آن کلید نشست تلاش به رمزگشایی می‌کند اما تلاشی برای دسترسی به کلیدهای مخفی کاربر نخواهد کرد. اگر رمزگشایی موفقیت‌آمیز باشد، خود متن آشکار (cleartext) نمایه‌سازی می‌شود. در هر دو حالت، پیام همیشه به شکل اصلی خود (متن رمزشده یا ciphertext) روی دیسک ذخیره می‌شود.

مقدار nostash همانند true است با این تفاوت که کلیدهای نشست تازه‌کشف‌شده را در پایگاه‌داده ذخیره (stash) نمی‌کند.

آگاه باشید که نمایه (index) به احتمال زیاد (و یک کلید نشست ذخیره‌شده قطعاً) برای بازسازی متن آشکار خود پیام کافی است، بنابراین لطفاً اطمینان حاصل کنید که نمایه پیام notmuch به‌اندازه کافی محافظت می‌شود. بدون در نظر گرفتن امنیت نمایه خود، از --decrypt=true یا --decrypt=nostash استفاده نکنید.

همچنین بخش index.decrypt <#nmconfig-index.decrypt> را در notmuch-config <#notmuch-config-1> ببینید.

نمایه‌سازی تحت تأثیر گزینه‌های پیکربندی index.decrypt <#nmconfig-index.decrypt> و index.header.<prefix> <#nmconfig-index.header.-prefix> قرار دارد. برچسب‌گذاری توسط گزینه‌های new.tags <#nmconfig-new.tags> و maildir.synchronize_flags <#nmconfig-maildir.synchronize_flags> کنترل می‌شود. برای جزئیات به notmuch-config <#notmuch-config-1> مراجعه کنید.

این دستور در صورت موفقیت‌آمیز بودن تحویل نامه وضعیت خروج 0 و در غیر این صورت مقداری غیرصفر بازمی‌گرداند. پیش‌فرض این است که در صورت بروز هرگونه خطا، از جمله تحویل فایل پیام به فایل‌سیستم، نمایه‌سازی پیام در پایگاه‌داده Notmuch، تغییر برچسب‌ها و همگام‌سازی برچسب‌ها با پرچم‌های maildir، شکست تحویل نامه گزارش شود. از گزینه --keep می‌توان برای بسنده کردن به تحویل موفقیت‌آمیز فایل پیام استفاده کرد.

این دستور از کد وضعیت خروج ویژه زیر برای خطاهایی که ماهیت آن‌ها به احتمال زیاد موقتی است، پشتیبانی می‌کند؛ مانند عدم موفقیت در دریافت قفل نوشتن پایگاه‌داده (database write lock).

75 (EX_TEMPFAIL)
یک خطای موقت رخ داده است؛ از کاربر خواسته می‌شود دوباره تلاش کند.

وضعیت خروج قلاب post-insert بر وضعیت خروج دستور insert تأثیری ندارد.

notmuch <#notmuch-1>, notmuch-config <#notmuch-config-1>, notmuch-count <#notmuch-count-1>, notmuch-dump <#notmuch-dump-1>, notmuch-hooks <#notmuch-hooks-5>, notmuch-reply <#notmuch-reply-1>, notmuch-restore <#notmuch-restore-1>, notmuch-search <#notmuch-search-1>, notmuch-search-terms <#notmuch-search-terms-7>, notmuch-show <#notmuch-show-1>, notmuch-tag <#notmuch-tag-1>

Carl Worth و بسیاری دیگر

2009-2026, Carl Worth و بسیاری دیگر

April 17, 2026 0.40