यह आपके स्वयं के PSVariable व्युत्पन्न वर्ग बनाकर प्रबंधित कोड (सी #/वीबी) में करने योग्य है, लेकिन सीधे शुद्ध लिपि में नहीं, क्षमा करें। मैं "शुद्ध लिपि" कहता हूं क्योंकि पावरहेल v2 में आप सी # को ऐड-टाइप के साथ रेखांकित कर सकते हैं। उस ने कहा, आप इसे टॉरिटिंग कॉल पर भरोसा करके स्क्रिप्ट में हैक कर सकते हैं लेकिन यह हर स्थिति में विश्वसनीय नहीं होगा। उदाहरण:
# empty custom object
$o = new-object psobject
# override ToString with a PSScriptMethod member
$o.psobject.members.add((new-object `
System.Management.Automation.PSScriptMethod "ToString", {
"ticks: $([datetime]::now.ticks)" }))
ps> $o
ticks: 634256043148813794
ps> $o
ticks: 634256043165574752
नोट टिक गिनती चर में से प्रत्येक के मूल्यांकन पर अलग है। यदि निश्चित रूप से यदि आप एक चर के बजाय नियमित फ़ंक्शन का उपयोग करते हैं, तो यह बहुत आसान है।
function Ticks { [datetime]::now.ticks }
# use as a parameter - note the use of (and)
ps> write-host (ticks)
634256043148813794
# use in a string - note the use of $(and)
ps> write-host "ticks $(ticks)"
ticks 634256043165574752
आशा इस मदद करता है
-Oisin
क्यों एक विधि का उपयोग नहीं? http://www.computerperformance.co.uk/powershell/powershell_functions.htm – asawyer
आपके उदाहरण में, डीआईआर $ myvar काम नहीं करेगा, क्योंकि लेखन-होस्ट डीआईआर के लिए आउटपुट नहीं होगा। आप लेखन-आउटपुट चाहते हैं, लेकिन आपको वास्तव में इसकी आवश्यकता नहीं है, आपको केवल $ $ myvar = 'foo'' – Jaykul