নতুন উইন্ডোতে চালিত হলে কেবল কীভাবে "বিরতি" দেওয়া যায়?


2

আমি একটি ব্যাচের স্ক্রিপ্ট লিখেছি যা ধরে নিয়েছে যে %1কোনও ফাইলের পথ। কখনও কখনও আমি উইন্ডোজ এক্সপ্লোরারে ড্র্যাগ-ড্রপের মাধ্যমে এই ব্যাচের স্ক্রিপ্টটি ব্যবহার করতে চাই (আমার টার্গেট ফাইলটি আমার ব্যাচের স্ক্রিপ্ট ফাইলের উপরে টেনে নিয়ে যাওয়া) এবং অন্য সময়ে আমি এই ব্যাচ স্ক্রিপ্টটি একটি বিদ্যমান কমান্ড প্রম্পট উইন্ডো থেকে চালাতে চাই এবং আমার সরবরাহ করতে চাই %1স্পষ্টত পাথ (সাধারণত কেবল একটি আপেক্ষিক পাথ)।

আমি চাই না যে "স্ক্র্যাপ ড্রপিং" যখন আমার স্ক্রিপ্টটি তত্ক্ষণাত্ অদৃশ্য হয়ে যায়, এইভাবে আমার দরকার pause। তবে, any key to continueবিদ্যমান কমান্ড প্রম্পট উইন্ডোটি ব্যবহার করার সময় আমি প্রতিবার টিপতে চাই না, সুতরাং আমি চাই না pause

উভয় বিশ্বের সেরা আছে কি উপায় আছে? আমি যেভাবে আমার মধ্যে রয়েছি সেই দৃশ্যটি সনাক্ত / অনুমান করতে পারি এবং তার পরে বিরতি বা না থামানোর সিদ্ধান্ত নিতে পারি? এখানে সেরা পদ্ধতির কি?

উত্তর:


4

এটি আপনার ব্যাচ ফাইলে ব্যবহার করার চেষ্টা করুন:

set arg0=%0
if [%arg0:~2,1%]==[:] pause

এটি 0 ম আর্গুমেন্টের তৃতীয় অক্ষর (মূলত ব্যাচ ফাইলের নাম নিজেই) কোলন কিনা তা পরীক্ষা করে।

সাধারণত, আপনি যখন কোনও ব্যাচের ফাইলে কোনও কিছু টেনে আনেন এবং ছাড়েন তখন এটিকে বলা হয়: "Drive:\path\to\Batch File.bat" Arg1 Arg2 ...তবে, আমরা যখন কমান্ড প্রম্পট থেকে একটি ব্যাচ ফাইলটি চালিত করি তখন আমরা সাধারণত উদ্ধৃত পরম পথ দিয়ে এটিকে কল করি না। সুতরাং আমরা এই পার্থক্যটি কাজে লাগাতে পারি এবং pauseকেবলমাত্র যখন কোলন তৃতীয় চরিত্র হিসাবে উপস্থিত হয় কেবল তখনই তা কার্যকর করা যায় যা বোঝায় যে ব্যাচ ফাইলটি ড্রাগ-অ্যান্ড ড্রপের মাধ্যমে কার্যকর করা হয়েছিল। অবশ্যই, আপনি যদি কমান্ড প্রম্পট থেকে ব্যাচ ফাইলটি কার্যকর করতে একটি উদ্ধৃত নিরঙ্কুশ পাথ ব্যবহার করেন তবে এটি স্বাভাবিকভাবেই হবে pause


ঠিক আমার যা প্রয়োজন
ডাকমাস্টার

3

cmd /kআপনার স্ক্রিপ্টের শেষে একটি নিক্ষেপ করুন। একটি বিদ্যমান উইন্ডোতে এটি কেবল কমান্ড প্রম্পটে ফিরে আসবে এবং একটি নতুন উইন্ডোতে উইন্ডোটি উন্মুক্ত রেখে এটি একই কাজ করবে।

@echo off
echo "some text"
cmd /k

নোট করুন / কে এটি মুদ্রণ বন্ধ করতে হবে:

মাইক্রোসফ্ট উইন্ডোজ [সংস্করণ 6.1.7601] কপিরাইট (সি) ২০০৯ মাইক্রোসফ্ট কর্পোরেশন। সর্বস্বত্ব সংরক্ষিত.


+1 টি। এটি সহায়ক, যদিও এখন এটির একটি কমান্ড প্রম্পট খোলার পার্শ্ব প্রতিক্রিয়া রয়েছে, যখন সত্যই আমি আচরণটি রাখতে চাই pauseযে আমি নতুন উইন্ডোটি বন্ধ করতে স্পেসবারে (বা কোনও কী) হিট করতে পারি।
ডাকমাস্টার

কিভাবে Alt + F4 সম্পর্কে? : পিআই দুর্ভাগ্যক্রমে দুটি পরিস্থিতির মধ্যে পার্থক্য করার কোনও উপায় নেই বলে মনে করি না। কেউ আমাকে ভুল প্রমাণ করার জন্য খুশি, যদিও এটি কার্যকর হবে।
তাজ

হাহা, আমি আসলে আল্ট + এফ 4 এর সাথে একটি কমান্ড প্রম্পটটি বন্ধ করার চেষ্টা করেছি এটি কাজ করে না তা আবিষ্কার করার জন্য। -.-
তাজ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.