के आधार पर निष्पादित करने के लिए कौन सा आदेश निष्पादित कर सकता है मुझे एक प्रोग्राम बनाना है जो विंडोज के लिए "ipconfig" और लिनक्स के लिए "ifconfig" का उपयोग करके नेटवर्क सेटिंग्स प्रिंट करेगा, लेकिन मुझे इसे अद्वितीय के साथ करने की ज़रूरत है ओएस दोनों के लिए कार्यान्वयन।जावा प्रोग्राम कैसे तय कर सकता है कि ओएस
5
A
उत्तर
9
आप के माध्यम से
System.getProperty("os.name")
कुछ नमूना कोड के लिए this page पर एक नज़र डालें ऑपरेटिंग सिस्टम के नाम पर प्राप्त कर सकते हैं।
:यदि यह कोई मौका स्थानीय होस्ट में आपकी रुचि है के आईपी से है, वहाँ तरीके यह सीधे जावा में मिल रहे हैं
"आईपी जानकारी दिखाने" के लिए कोई तरीका नहीं है - कमांड एफ है या एक मनमाना ऑपरेटिंग सिस्टम। प्रत्येक ऑपरेटिंग सिस्टम नाम के लिए मैन्युअल रूप से आदेश (यदि एक है) को कड़ी-कोड करना होगा।
3
aioobe's solution पर निर्माण:
final String osname = System.getProperty("os.name").toLowerCase();
String processName;
if(osname.startsWith("win"))
processName="ipconfig /some /parameter";
else
processName="ifconfig -some -parameter";
Runtime.getRuntime().exec(processName);
3
संदर्भ के लिए, एक ठोस example कि केवल एक विशेष ओएस के लिए एक संपत्ति सेट है:
if (System.getProperty("os.name").startsWith("Mac OS X")) {
System.setProperty("apple.awt.graphics.UseQuartz", "true");
}
5
अन्य उत्तर के पूरक के रूप में, मैं हूँ कॉमन्स लैंग से SystemUtils
का उल्लेख करें जो विभिन्न स्थिरता जैसे IS_OS_UNIX
, IS_OS_WINDOWS
, आदि
संबंधित मुद्दे
- 1. क्या मेरा धागा ओएस को यह तय करने में मदद कर सकता है कि संदर्भ कब इसे स्विच कर सकता है?
- 2. जावा: ओएस
- 3. मैं एक उलटा गिट प्रतिबद्ध कैसे तय कर सकता हूं?
- 4. मैं कैसे तय कर सकते हैं कि कितना स्मृति मेरे कार्यक्रम वर्तमान में कब्जा है
- 5. मैं कैसे तय करूं कि व्यूस्टेट में स्टोर करना है?
- 6. मैं कैसे निर्धारित कर सकता हूं कि मेरा .NET प्रोग्राम कितना मेमोरी उपयोग कर रहा है?
- 7. निष्पादन के दौरान, जावा प्रोग्राम कैसे बता सकता है कि यह कितनी मेमोरी का उपयोग कर रहा है?
- 8. एक संकलित प्रोग्राम ओएस के साथ कैसे सहभागिता करता है?
- 9. मैं कैसे निर्धारित कर सकता हूं कि जावा क्लास प्रतिबिंब
- 10. यह तय कैसे करें कि डिफ़ॉल्ट EKCalendar 'कैलेंडर' छुपाया जा सकता है या नहीं?
- 11. जावा प्रोग्राम
- 12. मेरा जावा प्रोग्राम अपनी .jar फ़ाइल के अंदर फ़ाइलों को कैसे स्टोर कर सकता है?
- 13. एक .NET प्रोग्राम खुद को कैसे अपडेट कर सकता है?
- 14. मैं कैसे तय कर सकता हूं कि मूल्य शून्य नहीं हो सकता पैरामीटर नाम: XAML फ़ाइल खोलते समय TypeName?
- 15. स्थैतिक रूप से तय करें कि स्कैला वर्ग अपरिवर्तनीय है
- 16. जावा: प्रोग्राम
- 17. जावा ओएस के तहत जावा
- 18. लिंकर्स कैसे तय करते हैं कि पुस्तकालयों के किस हिस्से में शामिल होना है?
- 19. जावा - कैसे पता चलेगा कि धागा इंतजार कर रहा है?
- 20. जावा प्रोग्राम
- 21. फ़िंग क्या कर सकता है कि चींटी नहीं कर सकती?
- 22. डेविस क्या कर सकता है कि ऑथलॉगिक नहीं कर सकता?
- 23. जीयूआई जावा प्रोग्राम - पेंट प्रोग्राम
- 24. जावा-सेवा-रैपर कैसे तय करता है कि 32 या 64 बिट वीएम का उपयोग करना है या नहीं?
- 25. जावा प्रोग्राम
- 26. जावा प्रोग्राम को संकलित करें ... जावा प्रोग्राम
- 27. जावा थ्रेड बनाम ओएस थ्रेड
- 28. स्पष्ट रूप से टाइप 'एक्स' से 'स्ट्रिंग' को परिवर्तित नहीं कर सकता - यह कब और कैसे तय करता है कि यह "नहीं कर सकता"?
- 29. मैं कैसे तय कर सकते हैं कि कई फ़ाइल पथ प्रारूपों समान भौतिक स्थान को
- 30. कोई बता सकता है कि ट्रैफिकस्टैट एंड्रॉइड ओएस में अपना जादू कैसे काम करता है?
धन्यवाद। मुझे पता है कि मुझे यह जानने की जरूरत है कि प्रोग्राम को कैसे तय किया जाए कि ओएस – jboy
"मैक ओएस एक्स" के आधार पर रनटाइम पर किस प्रक्रिया को निष्पादित करना है! –
@ टोनी एननिस: फिर * "ifconfig" * ठीक काम करेगा ... (ओएस एक्स पर एक ipconfig भी है, लेकिन वह एक अलग है)। इसके अलावा, ओएस एक्स का * ifconfig * काफी लिनक्स * ifconfig * है। – SyntaxT3rr0r