.NET कोर स्थापित है, तो यह निर्धारित करने के लिए कैसे


301

मुझे पता है कि .NET के पुराने संस्करणों के लिए, आप यह निर्धारित कर सकते हैं कि किसी दिए गए संस्करण को निम्नलिखित द्वारा स्थापित किया गया है या नहीं

https://support.microsoft.com/en-us/kb/318785  

क्या .NET कोर स्थापित है, तो यह निर्धारित करने की एक आधिकारिक विधि है?

(और मुझे एसडीके से मतलब नहीं है, मैं एसडीके के बिना एक सर्वर की जांच करना चाहता हूं, यह निर्धारित करने के लिए कि क्या उस पर DotNetCore.1.0.0-WindowsHosting.exe स्थापित है)

मैं देख सकता हूँ

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NET Cross-Platform Runtime Environment\.NET Framework 4.6\Win\v1-rc1 

मेरी विंडोज 7 मशीन पर 1.0.11123.0 के संस्करण # के साथ, लेकिन मुझे अपने विंडोज 10 मशीन पर एक ही सामान नहीं दिखता है।


1
अच्छा प्रश्न। .NET कोर का अनुसरण करने वाला कोई भी व्यक्ति जानता है कि रनटाइम और एसडीके संस्करण एक बहुत ही भ्रमित विषय है।
सीन

@ चिरमिसु, नीचे दिए गए सभी चेक मेरे लिए काम करते थे, लेकिन कुछ अप्रासंगिक कार्यान्वयन विवरणों के कारण, मैं वांछित राज्य कॉन्फ़िगरेशन के साथ गया, और यह सुनिश्चित करने के लिए उपयोग किया कि dnc विंडोज़ सर्वर होस्टिंग स्थापित है। (यानी मेरे पास DotNetCore.1.0.0-WindowsServerHosting.exe और सुनिश्चित करें = DotnetCore.2.0.5-WindowsServerHosting.exe पर मौजूद है (या कोई अन्य इच्छित नाम जो आप पा सकते हैं) है। DSC यह सुनिश्चित करने के लिए कि उचित पैकेज स्थापित / अनइंस्टॉल किया गया है, जाँच करने के लिए इसमें शामिल सभी गड़बड़ को संभालता है।
वेलोहेट्टी

3
dotnet -list-sdks और dotnet -list-runtimes मेरे होस्ट पर 2.1.300-प्रीव्यू1-008174 के साथ सक्रिय संस्करण के रूप में उपलब्ध हैं
jumpercake

इसे नीचे शक्तियां dotnet --info सोर्स
manikanta kumar

जवाबों:


208

शक्तियों का उपयोग करना :

runtimes:

(dir (Get-Command dotnet).Path.Replace('dotnet.exe', 'shared\Microsoft.NETCore.App')).Name

SDKs:

(dir (Get-Command dotnet).Path.Replace('dotnet.exe', 'sdk')).Name

1
@MarceloFilho आपके पास कौन सा संस्करण है? आप इसका उपयोग करके प्राप्त कर सकते हैं [System.Environment]::OSVersion। मैंने विंडोज 10 वर्जन 10.0.15063.0 का उपयोग करते हुए उपर्युक्त आदेशों का परीक्षण किया। यह बढ़िया काम करता है।
एंड्री टॉल्स्टॉय

6
मैं विंडोज सर्वर 2016 और विंडोज़ 10. पर पूरी तरह से इस काम की पुष्टि कर सकता हूं
user5389726598465

1
क्या केवल SDK स्थापित डॉटनेट कमांड उपलब्ध नहीं है? जो ओपी ने पूछा था उसके बिल्कुल विपरीत था।
औरिमास एन।

@AurimasN। नहीं, dotnet.exe कमांड एसडीके और रनटाइम तैनाती दोनों के साथ उपलब्ध है। एसडीके बस एक आवश्यक सीएलआई कमांड जोड़ता है, और आवश्यक लाइब्रेरीज़, एक प्रोजेक्ट के भीतर से "डॉटनेट.डे बिल्ड" और "डॉटनेट। रन" करने के लिए आवश्यक है।
जेसन मॉक

3
विंडोज 10 पर पॉवरशेल में काम करता है लेकिन मैं dotnet --infoअन्य उत्तरों में सुझाए गए पसंद करता हूं ।
मैनफ्रेड

344

महान सवाल, और जवाब एक साधारण नहीं है। कोई "मुझे सभी .net मुख्य संस्करण" कमांड नहीं दिखा रहा है, लेकिन आशा है।

संपादित करें:

मुझे यकीन नहीं है कि जब इसे जोड़ा गया था, लेकिन सूचना कमांड अब अपने आउटपुट में इस जानकारी को शामिल करता है। यह स्थापित रनटाइम्स और SDK को प्रिंट करेगा, साथ ही कुछ अन्य जानकारी:

dotnet --info

यदि आप केवल एसडीके देखना चाहते हैं: dotnet --list-sdks

यदि आप केवल स्थापित रनटाइम देखना चाहते हैं: dotnet --list-runtimes

मैं विंडोज पर हूं, लेकिन मुझे लगता है कि यह मैक या लिनक्स पर काम करेगा और साथ ही एक वर्तमान संस्करण के साथ।

इसके अलावा, आप एसडीके संस्करणों को समझने में मदद करने के लिए .NET कोर डाउनलोड आर्काइव का संदर्भ ले सकते हैं ।


पुराने जानकारी: इस बिंदु के नीचे सब कुछ पुरानी जानकारी है, जो कम प्रासंगिक है, लेकिन फिर भी उपयोगी हो सकती है।

देखें स्थापित Runtimes :

C:\Program Files\dotnet\shared\Microsoft.NETCore.Appविंडोज एक्सप्लोरर में खोलें

स्थापित एसडीके देखें :

C:\Program Files\dotnet\sdkविंडोज एक्सप्लोरर में खोलें

(स्थानों के लिए स्रोत: एक डेवलपर का ब्लॉग )


इसके अलावा, आप कमांड प्रॉम्प्ट पर इन कमांड को जारी करके नवीनतम रनटाइम और एसडीके संस्करण देख सकते हैं :

dotnet नवीनतम रनटाइम संस्करण सूचीबद्ध पहली चीज़ है। अस्वीकरण: यह अब काम नहीं करता है, लेकिन पुराने संस्करणों के लिए काम कर सकता है।

dotnet --version नवीनतम SDK संस्करण DISCLAIMER: जाहिरा तौर पर इसका परिणाम किसी भी Global.json config फाइलों से प्रभावित हो सकता है।


MacOS पर आप नीचे कमांड का उपयोग करके .net मुख्य संस्करण की जांच कर सकते हैं।

ls /usr/local/share/dotnet/shared/Microsoft.NETCore.App/

उबंटू या अल्पाइन पर:

ls /usr/share/dotnet/shared/Microsoft.NETCore.App/

यह स्थापित संस्करण नाम के साथ फ़ोल्डर को सूचीबद्ध करेगा।


15
MacOS पर:ls /usr/local/share/dotnet/shared/Microsoft.NETCore.App/
सर्गई वोल्कोव

मेरे मामले में, dotnet --version ने 1.1.0 कहा, लेकिन स्थापित संस्करणों में 1.1.2 शामिल था। बस जाँच के लिए, मैंने dotnet.exe का नाम बदला, और dotnet --version को कोई संस्करण नहीं मिला। मैंने फिर 1.1.2 को फिर से स्थापित किया, और डॉटनेट --version ने कहा कि मेरे पास 1.1.0 था।
विलियम जॉकस

1
@SergiiVolchkov टिप्पणी के लिए धन्यवाद। क्या आप मुझे बता सकते हैं कि मैक से dotnet core1.0.0 की स्थापना कैसे रद्द करें?
पंकज पारकर

1
.NET कोर 2.1.0 में "
डॉटनेट

1
dotnet --versionउपयोग में एसडीके को सूचीबद्ध करता है, जो डिफ़ॉल्ट रूप से नवीनतम है, लेकिन हमेशा सच नहीं है। यदि आपके पास अपने फ़ोल्डर संरचना में एक Global.json फ़ाइल है, तो यह वैश्विक में जो भी संस्करण सेट किया गया है वह प्रदर्शित करेगा। json, नवीनतम नहीं।
मायरा वेंजेल - MSFT

164

एसडीके के बिना रनटाइम-केवल वातावरण के लिए सही उत्तर, जैसे कि विंडोज होस्टिंग पैकेज के साथ एक सर्वर स्थापित है, निम्नलिखित कमांड के साथ पावरशेल चलाने के लिए है:

dotnet --info

प्रति आधिकारिक दस्तावेज :

  • --versionविकल्प "उपयोग में नेट कोर एसडीके के संस्करण बाहर प्रिंट।" और इसलिए SDK स्थापित नहीं होने पर काम नहीं करता है। जहाँ तक...
  • --infoविकल्प "इस तरह के वर्तमान ऑपरेटिंग सिस्टम के रूप में CLI टूलींग और पर्यावरण, के बारे में विस्तृत जानकारी प्रिंटों, संस्करण, और अन्य जानकारी के लिए SHA करते हैं।"

यहां एक और आधिकारिक लेख बताया गया है कि .NET कोर संस्करण कैसे काम करता है। :)


9
क्या अविश्वसनीय है यह वास्तविक जवाब है। और यह उन लोगों के उत्तरों के ढेर के नीचे दब गया है, जिन्होंने प्रश्न को सही ढंग से पढ़ने की जहमत नहीं उठाई।
जैमर

--infoमेरे सर्वर पर काम नहीं करता है, जबकि --versionकाम करता है। जानकारी विकल्प मुझे देता है:Did you mean to run dotnet SDK commands? Please install dotnet SDK from: http://go.microsoft.com/fwlink/?LinkID=798306&clcid=0x409
ArieKanarie

@ArieKanarie आपको Microsoft .NET फ्रेमवर्क रिपेयर टूल का उपयोग करके मरम्मत की आवश्यकता हो सकती है ।
चिरामिसु

106

आप जांच कर सकते हैं कि क्या dotnet.exe उपलब्ध है:

where dotnet

फिर आप संस्करण की जांच कर सकते हैं:

dotnet --version

अद्यतन: अब ऐसा करने का एक बेहतर तरीका है, जिसे कई अन्य उत्तरों में अच्छी तरह से समझाया गया है:

dotnet --info


34
यह डॉटनेट सीएलआई संस्करण से निकलता है, रनटाइम नहीं .. यह दो अलग-अलग चीजें हैं। CLI स्थापित होने का मतलब रनटाइम इंस्टॉल नहीं है और यदि यह एक ही संस्करण है।
अलेक्जेंडरिस

sshकेवल रनटाइम की पुष्टि के लिए स्थापित सर्वर के साथ एड करने के लिए, यह काम नहीं करता है। इसके बजाय यह उत्तर देखें
गृध्रपद

49

.NET CoreWindows पर स्थापित किया गया है, यह निर्धारित करने के डमी के तरीकों में से एक है:

  • Windows+ दबाएंR
  • प्रकार cmd
  • कमांड प्रॉम्प्ट पर, टाइप करें dotnet --version

बिंदी - विसर्जन

यदि .NET Coreस्थापित है, तो हमें उपरोक्त चरणों में कोई त्रुटि नहीं मिलनी चाहिए।


6
एक ही उत्तर के ऊपर टिप्पणी देखें : यह डॉटनेट सीएलआई संस्करण है, रनटाइम नहीं है। यह दो अलग-अलग चीजें हैं। CLI स्थापित होने का मतलब रनटाइम स्थापित नहीं है और अगर यह एक ही संस्करण है
माइकल फ्रीजिम

नाइटपॉकिंग, लेकिन आपके पास एक CLI नहीं हो सकता है जो बिना रनटाइम इंस्टॉल किए काम करता है। इसलिए यदि आपके पास सीएलआई है, तो आपके पास कुछ रनटाइम होगा, यह सिर्फ इतना है कि यह पूरी तरह से अलग संस्करण हो सकता है।
omajid

@omajid सुनिश्चित नहीं हैं कि आप किस CLI के बारे में बात कर रहे हैं। मैं अपने उत्तर में जिस CLI का जिक्र कर रहा हूं, वह विंडोज 10 x64 पर डिफ़ॉल्ट कमांड प्रॉम्प्ट CLI है जो विशेष प्रतिष्ठानों के बिना स्थापित / उपलब्ध है
मोहम्मद ज़मीर

यह सवाल का जवाब नहीं है।
जैमर

@ जैमर मैं सुझाव देता हूं कि आप एक संपादित सुझाव प्रदान करें
मोहम्मद ज़मीर

20

(1) यदि आप विंडो सिस्टम पर हैं।

कमांड प्रॉम्प्ट खोलें।

 dotnet --version

(2) नीचे दिए गए कमांड को चलाएं यदि आप लिनक्स सिस्टम पर हैं।

dotnet --version

dotnet --info

type dotnet --version- विंडोज पर काम नहीं dotnet --versionकरता है। 10. काम करता है। आप अपने जवाब के बारे में निश्चित हैं या वह typeटाइपो था? दोनों लिनक्स कमांड मेरे लिए विन 10 पर काम करते हैं।
आदित्य

@ आदित्य सहमत typeकमांड के भाग के बजाय पाठक को एक निर्देश है। मैंने पोस्ट को मिलान करने के लिए संपादित किया है।
JohnLBevan

हाँ, यह एक निर्देश था।
हिरेन परगी

15

मैं मुख्य रूप से विंडोज डेवलपमेंट मशीन और सर्वर के साथ काम करता हूं।

मैं केवल इंगित करना चाहता था (कम से कम NET.Core 2.0 और इसके बाद के संस्करण के लिए) केवल आवश्यक चीज है dotnet --infoजिसे कमांड प्रॉम्प्ट में निष्पादित करने के लिए नवीनतम संस्करण के बारे में जानकारी प्राप्त करना है। यदि .NET कोर स्थापित है, तो आपको कुछ प्रतिक्रिया मिलेगी।

मेरी विकास मशीन (विंडोज 10) पर परिणाम निम्नानुसार है। एसडीके 2.1.2 है और रनटाइम 2.0.3 है।

.NET Command Line Tools (2.1.2)

Product Information:
 Version:            2.1.2
 Commit SHA-1 hash:  5695315371

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.15063
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\2.1.2\

Microsoft .NET Core Shared Framework Host

  Version  : 2.0.3
  Build    : a9190d4a75f4a982ae4b4fa8d1a24526566c69df

Windows सर्वर होस्टिंग पैक (कोई एसडीके) परिणाम के साथ विंडोज सर्वर 2016 पर चलने वाले मेरे सर्वर पर निम्नानुसार है। कोई एसडीके, रनटाइम 2.0.3 है।

Microsoft .NET Core Shared Framework Host

Version  : 2.0.3
Build    : a9190d4a75f4a982ae4b4fa8d1a24526566c69df

चियर्स!


10

निम्न आदेश .NET Core SDK 2.1 (v2.1.300) के साथ उपलब्ध हैं :

सभी स्थापित .NET कोर एसडीके उपयोग की सूची के लिए: dotnet --list-sdks

सभी स्थापित .NET कोर रनटाइम के उपयोग की सूची के लिए dotnet --list-runtimes

(लिखित रूप में विंडोज पर परीक्षण किया गया, 03 जून 2018, और फिर 23 अगस्त 2018 को)

24 अक्टूबर 2018 तक अपडेट करें: बेहतर विकल्प शायद अब dotnet --infoटर्मिनल या पॉवरशेल विंडो में है जैसा कि पहले से ही अन्य उत्तरों में बताया गया है।


हम सब सीख सकते हैं। पतन का कारण जानने के लिए उत्सुक। शायद एक टिप्पणी छोड़ दो जब आप नीचा दिखाते हैं?
मैनफ्रेड

मैंने डाउनवोट नहीं किया, लेकिन मैं अनुमान लगाता हूं कि यह हो सकता है क्योंकि आपने ".NET Core SDK के साथ उपलब्ध" कमांड का उल्लेख किया है, जबकि प्रश्न "मैं SDK के बिना एक सर्वर की जांच करना चाहता हूं"। यदि आप निर्धारित करते हैं कि केवल रनटाइम स्थापित होने पर कौन सी कमांड काम करती है, तो आपका उत्तर बेहतर होगा ।
टूलमेकरसेव

@ToolmakerSteve हाँ, यह बात हो सकती है। मेरे पास एक पर्यावरण नहीं है, हालांकि, एसडीके के बिना और इसे हटाने के लिए उस लंबाई पर नहीं जाना चाहूंगा .... आपकी टिप्पणी के लिए धन्यवाद, हालांकि। बहुत ज्यादा अधिमूल्यित।
मैनफ्रेड

5

खिड़कियों पर, आपको केवल कमांड प्रॉम्प्ट खोलने और टाइप करने की आवश्यकता है:

dotnet --version

यदि .net कोर फ्रेमवर्क स्थापित है, तो आपको वर्तमान इंस्टॉल किया गया संस्करण मिलेगा

स्क्रीनशॉट देखें:

यहां छवि विवरण दर्ज करें


3
यह आपको एसडीके संस्करण देता है, रनटाइम संस्करण नहीं
रेशम

1

वैकल्पिक रूप से आप बस अंदर देख सकते हैं

C: \ Program Files \ dotnet \ sdk


0

यह देखने के C:\Program Files\dotnet\shared\Microsoft.NETCore.Appलिए कि रनटाइम के किन संस्करणों में निर्देशिका है। स्रोत।

यहां बहुत सारे उत्तर एसडीके को रनटाइम के साथ भ्रमित करते हैं, जो अलग हैं।


0

अन्य सभी उत्तरों के बाद, यह उपयोगी साबित हो सकता है।

Visual Studio में अपना एप्लिकेशन खोलें। समाधान एक्सप्लोरर में, अपनी परियोजना पर राइट क्लिक करें। गुण पर क्लिक करें। एप्लिकेशन पर क्लिक करें। "टारगेट फ्रेमवर्क" के तहत ड्रॉपडाउन बटन पर क्लिक करें और वहां आप सभी स्थापित फ्रेमवर्क हैं।

BTW - अब आप चुन सकते हैं कि आपको कौन सा ढांचा चाहिए।


मैंने Visual Studio 2017 का उपयोग किया। YMMV।
बारूक एटा

-6

यह एक स्थापना प्रक्रिया की जरूरत नहीं है।

मैंने अपने टास्कबार (win10) पर "VSCore" पिन किया है, इसलिए इसे खोलें, और एक कार्य प्रबंधक खोलें "विज़ुअल स्टूडियो कोर" प्रक्रिया बाएं तीर का विस्तार करें और उनमें से किसी पर बाल प्रक्रिया दाहिने बटन को दबाएं और "ओपन फाइल लोकेशन" पर क्लिक करें। " मेन्यू।

यदि आपको याद नहीं है कि आपकी सभी हार्ड ड्राइव में "Code.exe" फ़ाइल कहाँ स्थापित है।


1
प्रश्न .NET कोर के बारे में नहीं है विचारधारा वी.एस. कोड।
user5389726598465
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.