बैच फाइलें: कंसोल विंडो को खुला कैसे छोड़ें


105

मेरे पास दो बैच फाइलें हैं, उनमें से एक दूसरे को निष्पादित करता है, अर्थात

  1. "मेरी बैच फ़ाइल"> 2. "कुछ अन्य बैच फ़ाइल"

मैंने पहली बैच फ़ाइल का एक शॉर्टकट बनाया है और इसके गुणों को निम्नलिखित तरीके से कॉल करने के लिए संपादित किया है।

cmd.exe /k "<SomePath>\<My Batch File>.bat" & pause

मैं क्या करना चाहता हूं मैं चाहता हूं कि बैच फ़ाइल के निष्पादन के बाद कंसोल विंडो खुली हो। अब यह बस बंद हो गया, सीएमडी झंडे के चारों ओर खेलने की कोशिश की, कोई परिणाम नहीं।

प्लेटफ़ॉर्म: विंडोज 7


अद्यतन १

संरचना को संशोधित किया, इस तरह के सरल उदाहरण के रूप में अच्छी तरह से काम नहीं करता है, केवल एक बैच फ़ाइल यानी कोई 2 है। "कुछ अन्य बैच फ़ाइल" केवल बैच फ़ाइल में इस तरह smth है

start /B /LOW /WAIT make package
cmd /K

अद्यतन २

वही शॉर्टकट जो एक्सप्लोरर से लगाया जाता है, कंसोल विंडो को बंद नहीं करता है। लेकिन कंसोल विंडो बंद हो जाती है जब शॉर्टकट को टास्कबार पर पिन किए गए आइटम से आमंत्रित किया जाता है

किसी भी विचार कैसे कंसोल विंडो खुली रखने के लिए?


मुझे लगता है तुम My Batch Fileचारों ओर छड़ी चाहते हैं ?
मार्क बी

"एक बैच फ़ाइल खुली के कंसोल विंडो को छोड़ने के लिए गर्म" कहा जाता है और यहां स्पष्ट रूप से उत्तर
oberlies

जवाबों:


126

यदि वास्तव में सभी बैच फ़ाइल कर रही है, तो निकालें cmd /Kऔर जोड़ें PAUSE

start /B /LOW /WAIT make package
PAUSE

फिर, बस अपने शॉर्टकट को इंगित करें "My Batch File.bat"... इसे चलाने की आवश्यकता नहीं है CMD /K

अपडेट करें

आह, कुछ नई जानकारी ... आप इसे टास्कबार पर पिन किए गए शॉर्टकट से करने का प्रयास कर रहे हैं।

मुझे यह मिला, विस्टा / XP क्विक लॉन्च की तरह विंडोज 7 टास्कबार में बैच फ़ाइलें जोड़ना , नीचे दिए गए प्रासंगिक भाग के साथ।

  1. सबसे पहले, CMD.EXEस्टार्ट बटन को दबाकर टास्कबार के लिए एक शॉर्टकट पिन करें, फिर खोज बॉक्स में "cmd" टाइप करें, परिणाम पर राइट-क्लिक करें और "पिन टू टास्कबार" चुनें।
  2. टास्कबार पर शॉर्टकट को राइट-क्लिक करें।
  3. आपको एक सूची दिखाई देगी जिसमें " कमांड प्रॉम्प्ट " और " टास्कबार से इस कार्यक्रम को अनपिन करें " शामिल है।
  4. आइकन को राइट-क्लिक करें CMD.EXEऔर चुनें Properties
  5. लक्ष्य के लिए बॉक्स में, "%SystemRoot%\system32\cmd.exe"टाइप करें " /C "और टाइप करें और बैच फ़ाइल का पथ और नाम।

अपने उद्देश्यों के लिए, आप या तो:

  1. अपनी बैच फ़ाइल के अंत में उपयोग करें /Cऔर डालें PAUSE

    या

  2. अपने बैच फ़ाइल से उपयोग करने /Kऔर निकालने के लिए कमांड लाइन बदलें PAUSE

मैंने पहले ही कर लिया है, मूल रूप से मेरा सवाल यह नहीं है कि एओटर बैच फ़ाइल कैसे कॉल करें ...
डेमस

फिर हमें दोनों बैच फ़ाइलों की सामग्री को देखने की आवश्यकता है।
एफोरिया

कृपया udpated प्रश्न देखें
deimus

एक ही मुद्दा, सीएमडी / के की जगह काम नहीं करता है। यदि एक्सप्लोरर से शॉर्टकट को आमंत्रित किया जाता है तो कंसोल विंडो बंद क्यों नहीं होती है?
डेमस

13

यहा पर:

cmd.exe /k "<SomePath>\<My Batch File>.bat" & pause

देखिए आप क्या कर रहे हैं:

  1. (cmd / K) एक नया cmd उदाहरण शुरू करें।
  2. (और रोकें) CURRENT cmd उदाहरण को रोकें ।

इसे कैसे हल करें? ठीक है, सही सिंटैक्स का उपयोग करके, नए CMD उदाहरण के लिए तर्क को संलग्न करना:

cmd.exe /k ""<SomePath>\<My Batch File>.bat" & pause"

6

मैं बस अंतिम पंक्ति के रूप में लिखा ठहराव यह दोनों .bat और .cmd के साथ ठीक काम किया। यह 'जारी रखने के लिए किसी भी कुंजी दबाएं' के रूप में भी संदेश प्रदर्शित करेगा।


यह सही जवाब है! शीर्ष मतदान होना चाहिए।
पैट्रिक हिलर्ट

5

बैच फ़ाइल की अंतिम पंक्ति में जिसे आप खुला रखना चाहते हैं a

pause >nul


ऐसा लगता है कि यह जल्दी बंद हो रहा है, शायद स्क्रिप्ट में कोई त्रुटि हो। एक cmd प्रॉम्प्ट खोलने और इसे वहां से चलाने का प्रयास करें, फिर आप देख सकते हैं कि क्या कोई त्रुटि है।
बाली C

3

कंसोल विंडो को खुला छोड़ने के लिए आपको केवल बैच फ़ाइल में अंतिम कमांड लाइन में जोड़ना होगा:

' & pause'

2

आप अपनी बैच फ़ाइल की अंतिम पंक्ति में केवल एक pauseकमांड डाल सकते हैं :

@echo off
echo Hey, I'm just doing some work for you.
pause

आपको आउटपुट के रूप में कुछ इस तरह देगा:

अरे, मैं सिर्फ आपके लिए कुछ काम कर रहा हूं।

जारी रखने के लिए कोई भी कुंजी दबाएँ ...

नोट: @echo का उपयोग आउटपुट प्रिंट होने से पहले कमांड को आउटपुट करने से रोकता है।



-1

अंत में यह आपके कंसोल को फिर से खोल देगा

start cmd 

यह समस्या को हल नहीं करता है, उपयोगकर्ता खिड़की को खुला रखना चाहता है, न कि किसी पुराने को फिर से खोलना।
एडम

-5

मैं सिर्फ एंटर दबाता हूं और पॉज टाइप करता हूं और यह ठीक काम करता है

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