अपनी .muttrc
पंक्ति में निम्न पंक्ति जोड़ें:
set display_filter="exec sed -r \"s/^Date:\\s*(([F-Wa-u]{3},\\s*)?[[:digit:]]{1,2}\\s+[A-Sa-y]{3}\\s+[[:digit:]]{4}\\s+[[:digit:]]{1,2}:[[:digit:]]{1,2}(:[[:digit:]]{1,2})?\\s+[+-][[:digit:]]{4})/date +'Date: %a, %d %b %Y %H:%M:%S %z' -d '\\1'/e\""
यह Date:
हेडर को संदेश में (केवल प्रदर्शन के लिए) आपके स्थानीय समयक्षेत्र में बदल देगा यदि हेडर में एक मान्य RFC स्वरूपित दिनांक समाहित है। यदि प्रदान की गई तारीख का प्रारूप गलत था (हम सभी के बाद अविश्वसनीय उपयोगकर्ता इनपुट के साथ काम कर रहे हैं) इसे संरक्षित किया जाएगा। हेडर के माध्यम से शेल कोड को इंजेक्ट करने के संभावित प्रयास का मुकाबला करने के लिए sed
पैटर्न RFC 5322 पर आधारित एक श्वेतसूची को लागू करता है (यह RFC Date:
क्षेत्र के प्रारूप को परिभाषित करता है )।
ध्यान दें कि mutt
कमांड लाइन की सीमा 255 वर्णों से अधिक नहीं है, इसलिए मैंने उस मूल sed
कमांड को अनुकूलित किया जिसमें 255 बाइट्स में फिट होने के लिए स्ट्राइटल व्हाइटलिस्ट था। यदि आप संदेश के साथ अन्य काम करने की योजना बनाते हैं, तो sed
एक स्क्रिप्ट में आप जो पूरी कमांड डाल सकते हैं वह है:
sed -r "s/^Date:\s*(((Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s*)?[[:digit:]]{1,2}\s+(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s+[[:digit:]]{4}\s+[[:digit:]]{1,2}:[[:digit:]]{1,2}(:[[:digit:]]{1,2})?\s+[+-][[:digit:]]{4})/date +'Date: %a, %d %b %Y %H:%M:%S %z' -d '\1'/e"
filter.sed
फ़ाइल में शामिल करना चाहूंगा । धन्यवाद!