हमारे पास बैकअप फ़ाइलों के लिए एक स्क्रिप्ट है। बैकअप ऑपरेशन खत्म हो जाने के बाद, हम अपने कुछ ईमेल पते पर एक ईमेल अधिसूचना के रूप में एक रिपोर्ट भेजना चाहते हैं।बैच फ़ाइल से मेल भेजना
यह कैसे किया जा सकता है?
हमारे पास बैकअप फ़ाइलों के लिए एक स्क्रिप्ट है। बैकअप ऑपरेशन खत्म हो जाने के बाद, हम अपने कुछ ईमेल पते पर एक ईमेल अधिसूचना के रूप में एक रिपोर्ट भेजना चाहते हैं।बैच फ़ाइल से मेल भेजना
यह कैसे किया जा सकता है?
bmail। बस EXE स्थापित करने और इस तरह की एक पंक्ति चलाएँ:
bmail -s myMailServer -f [email protected] -t [email protected] -a "Production Release Performed"
यहां मैं सुरक्षा उद्देश्य के अनुसार बमिल स्थापित नहीं कर सकता। कृपया मुझे बताएं कि मेरी समस्या का समाधान करने के लिए कोई अलौकिक तरीका है। – user73628
क्या आपने अन्य कमांड लाइन ईमेल क्लाइंट के साथ प्रयास किया है? एक Google खोज में बहुत से मुफ्त उपलब्ध टूल सूचीबद्ध हैं। –
Blat:
blat -to [email protected] -server smtp.example.com -f [email protected] -subject "subject" -body "body"
इसे समाधान –
सबसे आसान तरीके के रूप में दूसरों
ने उल्लेख किया है कि किसी में नहीं है एक तीसरे पक्ष के आवेदन का उपयोग करने के लिए है विकल्प मैंने vbscript & सीडीओ का उपयोग करके एक सरल प्रेषण उपयोगिता लिखी जिसे मैंने बैच स्क्रिप्ट से
यहां दिए गए उदाहरण देखें http://www.paulsadowski.com/WSH/cdo.htm
हम अपने पर्यावरण में हर समय ऐसा करने के लिए ब्लैट का उपयोग करते हैं। मैं इसे Stunnel के साथ जीमेल से कनेक्ट करने के लिए भी उपयोग करता हूं। यहाँ एक फ़ाइल
blat -to [email protected] -server smtp.example.com -f [email protected] -subject "subject" -body "body" -attach c:\temp\file.txt
भेजने के लिए पैरामीटर है या फिर आप उस फ़ाइल डाल सकते हैं शरीर
blat c:\temp\file.txt -to [email protected] -server smtp.example.com -f [email protected] -subject "subject"
तुम भी एक पावर शैल स्क्रिप्ट का उपयोग कर सकते हैं के रूप में:
$smtp = new-object Net.Mail.SmtpClient("mail.example.com")
if($Env:SmtpUseCredentials -eq "true") {
$credentials = new-object Net.NetworkCredential("username","password")
$smtp.Credentials = $credentials
}
$objMailMessage = New-Object System.Net.Mail.MailMessage
$objMailMessage.From = "[email protected]"
$objMailMessage.To.Add("[email protected]")
$objMailMessage.Subject = "eMail subject Notification"
$objMailMessage.Body = "Hello world!"
$smtp.send($objMailMessage)
के रूप में चिह्नित किया जाना चाहिए था। लेकिन अगर आप '.ps1' नहीं बनाना चाहते हैं, [आप इसे सीधे बैच से कॉल कर सकते हैं] (http://stackoverflow.com/a/38604180/2518317) – Hashbrown
प्रश्न बैच के बारे में था, शक्तिशक्ति नहीं। Poweshell केवल W7 और बाद में समर्थन करता है –
आप भी कर सकते हैं sendmail का उपयोग करें। मैं इस सबवर्सन हुक में ईमेल अधिसूचनाएं भेजने के लिए इसका उपयोग कर रहा हूं: post-commit hook
इस समस्या को संभालने के लिए कई विधियां हैं।
मेरी सलाह शक्तिशाली विंडोज फ्रीवेयर कंसोल एप्लिकेशन SendEmail का उपयोग करना है।
sendEmail.exe -f [email protected] -o message-file=body.txt -u subject message -t [email protected] -a attachment.zip -s smtp.gmail.com:446 -xu gmail.login -xp gmail.password
PowerShell comes with a built in command for it। तो एक .bat
फ़ाइल से सीधे चल रहा है:
powershell -ExecutionPolicy ByPass -Command Send-MailMessage^
-SmtpServer server.address.name^
-To [email protected]^
-From [email protected]^
-Subject Testing^
-Body 123
नायब-ExecutionPolicy ByPass
केवल जरूरत है अगर आप से यह कॉल करने के लिए उन लोगों के लिए अध्यक्ष एवं प्रबंध निदेशक
इसके अलावा से पी एस चलाने के लिए अनुमतियां सेट अप नहीं किया है पावरहेल के भीतर, -Command
[समावेशी] से पहले सब कुछ छोड़ दें, और `
आपका बच निकला चरित्र होगा (^
नहीं)
plzsendz tehcodz? –
मैं उलझन में हूँ। वह पूछ रहा है कि बैच फ़ाइल से ईमेल कैसे भेजना है। यह प्रोग्रामिंग प्रश्न नहीं है? – RossFabricant
इसे 'बैच' और बैश नहीं किया, मेरी टिप्पणी भूल जाओ – chburd