के पहले तत्व के रूप में अनुमति दी गई है, मैं पावरहेल में लिखित में नया हूं लेकिन यह वही है जो मैं पूरा करने की कोशिश कर रहा हूं।अभिव्यक्तियों को केवल पाइपलाइन
- मैं अगर एक अन्य की तुलना में नया है निर्धारित करने के लिए दो Excel फ़ाइलों की तारीखों की तुलना करना चाहते।
- मैं एक कंप्यूटर पर csv से xls तक एक फ़ाइल को कनवर्ट करना चाहता हूं जिसमें एक्सेल नहीं है। केवल अगर उपरोक्त कथन सत्य है, तो प्रारंभिक xls फ़ाइल पहले ही कॉपी की गई थी।
- मैं नई परिवर्तित xls फ़ाइल को किसी अन्य स्थान पर कॉपी करना चाहता हूं
- यदि फ़ाइल पहले से ही खुली है तो यह प्रतिलिपि में विफल हो जाएगी, इसलिए मैं इस ऑपरेशन की सफलता या विफलता पर एक ईमेल अलर्ट भेजना चाहता हूं।
यहां वह स्क्रिप्ट है जिसमें मुझे समस्याएं हैं। त्रुटि यह है कि "अभिव्यक्तियों को केवल पाइपलाइन के पहले तत्व के रूप में अनुमति दी जाती है।" मुझे पता है कि यह ईमेल ऑपरेशन के साथ करना है, लेकिन मुझे नुकसान है कि इसे उन सभी चर के साथ मैन्युअल रूप से कैसे लिखना है। शायद अधिक त्रुटियां हैं लेकिन मैं अब उन्हें नहीं देख रहा हूं। किसी भी मदद के लिए धन्यवाद, मैं इसकी सराहना करता हूं!
$CSV = "C:filename.csv"
$LocalXLS = "C:\filename.xls"
$RemoteXLS = "D:\filename.xls"
$LocalDate = (Get-Item $LocalXLS).LASTWRITETIME
$RemoteDate = (Get-Item $RemoteXLS).LASTWRITETIME
$convert = "D:\CSV Converter\csvcnv.exe"
if ($LocalDate -eq $RemoteDate) {break}
else {
& $convert $CSV $LocalXLS
$FromAddress = "[email protected]"
$ToAddress = "[email protected]"
$MessageSubject = "vague subject"
$SendingServer = "mail.mail.com"
$SMTPMessage = New-Object System.Net.Mail.MailMessage $FromAddress, $ToAddress, $MessageSubject, $MessageBody
$SMTPClient = New-Object System.Net.Mail.SMTPClient $SendingServer
$SendEmailSuccess = $MessageBody = "The copy completed successfully!" | New-Object System.Net.Mail.SMTPClient mail.mail.com $SMTPMessage
$RenamedXLS = {$_.BaseName+(Get-Date -f yyyy-MM-dd)+$_.Extension}
Rename-Item -path $RemoteXLS -newname $RenamedXLS -force -erroraction silentlycontinue
If (!$error)
{ $SendEmailSuccess | copy-item $LocalXLS -destination $RemoteXLS -force }
Else
{$MessageBody = "The copy failed, please make sure the file is closed." | $SMTPClient.Send($SMTPMessage)}
}
मैं वास्तव में क्या यकीन नहीं है आप इस लाइन पर पूरा करने की कोशिश कर रहे हैं: $ SendEmailSuccess = $ MessageBody = "प्रति सफलतापूर्वक पूर्ण हो गई!" | न्यू ऑब्जेक्ट सिस्टम.Net.Mail.SMTPClient mail.mail.com $ SMTPMessage लेकिन मुझे लगता है कि यह त्रुटि का अपराधी है। – EBGreen
@meep - सामग्री को संपादित न करें। तब भी आपका प्रश्न रखने में कोई बात नहीं है। भविष्य के आगंतुकों के लिए यह उपयोगी होगा भले ही आपने इसे समझ लिया हो। अपने संपादन संलग्न करें। – manojlds