ব্যাচ ফাইল ফাংশন বলা হচ্ছে নির্বাহ করা হয়


3

আমি একটি ফাংশন সংজ্ঞায়িত করেছি, অদ্ভুত বিষয় হল যে ফাংশন লাইনগুলি কার্যকর থাকলেও কার্যকর হয় না ফাংশন কল করুন !!

echo off
cls
REM call:ctrlService "stop" "1.1.1.1"
echo.SERVICES STARTED
:ctrlService - Generic function
echo.Parameter 1: %~1
echo.Parameter 2: %~2
dir
GOTO:EOF
echo on

আমি দেখতে echo বিবৃতি, আপেক্ষিক পরামিতি জন্য প্রদর্শিত মান ছাড়া নির্বাহ। এবং dir কমান্ড খুব মৃত্যুদন্ড কার্যকর করা হয়!

ফাংশনটি কীভাবে নিজেই কার্যকর করা বন্ধ করা যায়?


1
লেবেল :ctrlService নিম্নোক্ত লাইনগুলিকে এড়িয়ে যেতে দোভাষীকে বাধা দেবে না (আপনি ফাংশন শরীরটি কল করবেন)। সাধারণত আপনি ব্যাচ ফাইলের শেষে আপনার ফাংশন সংজ্ঞায়িত এবং ইন্টারপ্রেটার করতে goto :eof এটা সংজ্ঞা পৌঁছানোর আগে।
Vlastimil Ovčáčík

উত্তর:


5

একটি লেবেল যোগ মাত্র একটি লেবেল যোগ করে। এটি আপনার ব্যাচ ফাইল যদিও প্রবাহ পরিবর্তন না।

আপনি যদি একটি ব্যাচ ফাইলের অংশটি এড়িয়ে যেতে চান তবে আপনাকে এটির উপরে লাফ দিতে হবে।

উদাহরণস্বরূপ

    @echo off
    echo Your batch file has started. Jumping to main.
    GOTO :MAIN

    :function_label
    some_command
    some_command

    :MAIN
    some_command

এটি ব্যাচ ফাইলের প্রধান অংশে চলে যাবে, ফাংশনগুলি বাদ দেবে।
এই GOO ছাড়া ফাংশন প্রথম পৌঁছানো হবে, নির্বাহ এবং তারপর প্রবাহ নিম্নগামী পাস হবে।


অনেক আগ্রহব্যাঞ্জক !
robe007
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.