batch-file - شرح - how to make cmd batch file




كيف يمكنني قمع "وظيفة دفعة الإنهاء" في cmd.exe (6)

جرب هذا. إنه يقوم بفتح وحدة تحكم جديدة ، ولكنه يقوم بإغلاق وحدة التحكم الأخرى أثناء فتحها.

@echo off
start /WAIT java -jar build-scripts\contrib\rhino1.7R1.jar

أنا أبحث عن آلية لقمع الدعوة "إنهاء دفعة مهمة؟ (Y / N)" التي أحصل عليها كلما ضغطت CTRL-C في برنامج بدأ من ملف دفعي:

ملف دفعي: jsshell.bat:

@echo off
java -jar build-scripts\contrib\rhino1.7R1.jar

ثم بدء تشغيله على shell cmd بواسطة:

> jsshell.bat

الذي يعطيني قذيفة يمكن الخروج منها من خلال CTRL-C الذي يعطيني رسالة مفكوكة بعد الخروج


عملت FWIW ، الأنابيب 'N' كمدخلات لأمر معي لبعض الملفات الدفعية (لكنني أردت بالفعل النافذة الجديدة). ربما سوف يعمل لك أيضا.

(echo. N)| cmd /c java -jar build-scripts\contrib\rhino1.7R1.jar

لا تنسَ التفكير في حل المشكلة عن طريق تجنب البرامج النصية للمجموعات.

  • يمكن وحدات الماكرو Doskey استبدال البرامج النصية دفعة واحدة مثل البرنامج النصي المذكورة أعلاه. (قم Autorun برنامج Autorun الخاص بك.)
  • يتوفر Cscript.exe على كل جهاز Windows حديث ويمكن تشغيل برامج JavaScript و VBScript من سطر الأوامر
  • إذا قمت بإضافة ملحقات ملفات للغة البرمجة النصية المفضلة لديك (Perl ، Python ، Ruby ، ​​إلخ.) إلى متغير بيئة PATHEXT الخاص بك وإضافة البرنامج النصي إلى المسار الخاص بك ، يمكنك تنفيذه مباشرة دون برنامج نصي دفعي.

نعم ، هناك طريقة أكثر أناقة من patching cmd.exe. فقط ضع START أمام قيادتك. على سبيل المثال ، فإن السطر سيقرأ كما يلي: "START java -jar build-scripts \ contrib \ rhino1.7R1.jar"


يمنع التعديل أدناه "إنهاء مهمة المجموعة (Y / N)" ونافذة وحدة التحكم الجديدة:

start cmd /c java -jar build-scripts\contrib\rhino1.7R1.jar

@start cmd /c java -jar build-scripts\contrib\rhino1.7R1.jar
@exit

هذا سيجعل نافذة واحدة فقط





cmd