मैं विभिन्न फ़ाइल विशेषताओं को पढ़ने के लिए जावा एप्लिकेशन (विंडोज कमांड प्रॉम्प्ट के माध्यम से) से पावरहेल को कॉल कर रहा हूं।पावरहेल में विशेष पथ वाले फ़ाइल पथों का उपयोग कैसे करें?
उदा।
powershell (get-item 'C:\Users\erlpm\Desktop\Temp\s p a c e s.txt').creationTime
मैं एकल उद्धरण में फ़ाइल पथ संलग्न कर रहा हूं, क्योंकि इसमें रिक्त स्थान हो सकते हैं। यह ठीक काम करता है, जब तक कि मुझे स्क्वायर ब्रैकेट वाले फ़ाइल पथ का सामना नहीं हुआ, जिसे वाइल्डकार्ड वर्ण के रूप में समझा जाता है। मैं -literalPath पैरामीटर जोड़कर इसे हल करने में कामयाब रहे:
powershell (get-item -literalpath 'C:\Users\erlpm\Desktop\Temp\brackets[].txt').creationTime
अब तक तो अच्छा ... लेकिन फ़ाइल पथ भी एकल कोट, डॉलर चिह्न, एम्पेरसैंड्स, हो सकती है ... और ये सब पात्रों में शक्तियों में एक विशिष्ट कार्य प्रतीत होता है जिसके लिए -literalPath पैरामीटर काम नहीं कर रहा है। मैंने डबल कोट्स के साथ पथ को घेरने की कोशिश की या 'चरित्र के साथ भागने की कोशिश की, लेकिन इससे मेरी समस्या हल नहीं हुई :-(
पावरहेल में फ़ाइल पथ को पास करने के तरीके के बारे में कोई सुझाव जिसमें रिक्त स्थान, सिंगल कोट्स, वर्ग कोष्ठक, एम्पेरसैंड्स, डॉलर चिह्न आदि
अद्यतन? किसी ने यहाँ पहले से ही मुझे पता चला है कि यह कैसे Powershell के भीतर से काम कर पाने के लिए है, लेकिन किसी भी तरह जवाब हटा दिया गया है
वैसे भी, मैंने किया था $ & ' [].txt
नामक एक फ़ाइल बनाएं। यह कार्य प्रपत्र भीतर Powershell (& से बचने के लिए आवश्यक):
PS C:\Users\erlpm> Get-Item -LiteralPath "C:\Users\erlpm\Desktop\Temp\`$ & ' [].txt"
Directory: C:\Users\erlpm\Desktop\Temp
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 2012-08-23 14:22 0 $ & ' [].txt
लेकिन जब मैं विंडोज कमांड प्रॉम्प्ट के माध्यम से एक ही PowerShell आदेश पर अमल, ... इस त्रुटि
C:\Users\erlpm>powershell Get-Item -LiteralPath "C:\Users\erlpm\Desktop\Temp\`$ & ' [].txt"
... मैं मिल :
Ampersand not allowed. The & operator is reserved for future use; use "&" to pass ampersand as a string.
At line:1 char:55
+ Get-Item -LiteralPath C:\Users\erlpm\Desktop\Temp\`$ & <<<< ' [].txt
+ CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : AmpersandNotAllowed
-command
पैरामीटर का उपयोग करना औरके बीच PowerShell आदेश डालवास्तव में देता है एक ही त्रुटि संदेश ...
C:\Users\erlpm>powershell -command {Get-Item -LiteralPath "C:\Users\erlpm\Desktop\Temp\`$ & ' [].txt"}
आप रास्तों जो काम नहीं कर रहे के कुछ उदाहरण हैं, और सटीक त्रुटि आप प्राप्त प्रदान कर सकता है? आपने अभी तक केवल कार्य पथ प्रदान किए हैं, इसलिए यह कहना मुश्किल है कि समस्या कहां है। – latkin
मैंने अपना प्रश्न अपडेट किया और कुछ काम करने वाले और गैर-कामकाजी उदाहरण जोड़े। जैसा कि आप देख सकते हैं, मैं इसे पावरहेल प्रॉम्प्ट के भीतर से काम करने के लिए प्राप्त कर सकता हूं, लेकिन विंडोज कमांड प्रॉम्प्ट से पावरहेल निष्पादित नहीं कर सकता। –
मैंने "$ * '[] .txt" नामक फ़ाइल बनाकर अपनी समस्या का पुन: उत्पन्न किया। फिर, एक पावरहेल प्रॉम्प्ट से, मैंने प्राप्त करें और पावरहेल ने मेरे लिए फ़ाइल नाम पूरा किया, लेकिन मैं यहां पूरा फ़ाइल नाम पेस्ट नहीं कर सकता क्योंकि मार्कडाउन सभी विशेष पात्रों को खाता है। इसे आज़माएं और देखें कि क्या इससे मदद मिलती है। –
joXn