উইন্ডোজে 'কমান্ড লাইন' স্টার্ট 'কমান্ডের সাথে কমান্ড লাইন যুক্তি যুক্ত একটি প্রোগ্রাম কীভাবে শুরু করবেন?


33

আমার startউইন্ডোজ 7 কমান্ড লাইনে একটি কমান্ড দিয়ে পটভূমিতে একটি প্রোগ্রাম (ভার্চুয়াল মেশিন) শুরু করতে হবে । সাধারণত আপনি এটি এইভাবে করতে হবে:

start /b cmd yourprogram

তবে আমার কিছু যুক্তি পাস করতে হবে এবং যখন আমি এটি পছন্দ করি ( /bডিবাগের তথ্য দেখতে পতাকা ছাড়াই ):

start C:\Users\USER>start "c:\Program Files\Oracle\VirtualBox\VBoxHeadless.exe" -startvm "debian604 64"

আমি এই ত্রুটি বার্তাটি পেয়েছি:

উইন্ডোজ '-startvm' খুঁজে পাচ্ছে না। আপনি নামটি সঠিকভাবে টাইপ করেছেন তা নিশ্চিত করুন এবং তারপরে আবার চেষ্টা করুন।

অন্যদিকে যখন আমি startশুরুতে বর্তমান কমান্ড লাইন উইন্ডোতে এটি করি তখন ভার্চুয়াল মেশিনটি সাধারণত চালিত হয় - তবে অগ্রভাগে।

কোন সমাধান?

উত্তর:


36
start /b "" "c:\Program Files\Oracle\VirtualBox\VBoxHeadless.exe" -startvm "debian604 64"

আপনি যদি প্যারামিটার তালিকাটি সাথে পড়েন start /?:

START ["title"] [/D path] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
      [/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL]
      [/NODE <NUMA node>] [/AFFINITY <hex affinity mask>] [/WAIT] [/B]
      [command/program] [parameters]

    "title"     Title to display in window title bar.
    command/program
                If it is an internal cmd command or a batch file then
                the command processor is run with the /K switch to cmd.exe.
                This means that the window will remain after the command
                has been run.

                If it is not an internal cmd command or batch file then
                it is a program and will run as either a windowed application
                or a console application.

    parameters  These are the parameters passed to the command/program.

এটি titleকোট ( ") দিয়ে একটি বদ্ধ প্রত্যাশা করে । যেহেতু আপনার প্রোগ্রামের পথে কোটস অন্তর্ভুক্ত রয়েছে তাই এটি শিরোনাম হিসাবে ব্যাখ্যা করা যায়। একটি সুস্পষ্ট শিরোনাম যুক্ত করা (এই ক্ষেত্রে, খালি "") কাজ করে।


একটি বিকল্প পদ্ধতি /dপাথ নির্দিষ্ট করতে সুইচটি ব্যবহার করছে using বিশেষ করে:

start /b /d "c:\Program Files\Oracle\VirtualBox\" VBoxHeadless.exe -startvm "debian604 64"

/dস্যুইচ হওয়ার পরে প্রথম যুক্তিটি পাথ হিসাবে প্রকাশিত হবে বলে মনে হয় , এমনকি যদি এটি উদ্ধৃত হয়, এবং যদি পরবর্তী যুক্তিটি উদ্ধৃত না হয় তবে এটি কাজ করে। কমান্ড / প্রোগ্রাম হিসাবে স্বীকৃত সমস্ত কিছু পরে সেই আদেশ / প্রোগ্রামের পরামিতি হিসাবে প্রেরণ করা হয়। মনে রাখবেন কমান্ড / প্রোগ্রামের নামে ফাঁকা স্থান রয়েছে, উদাহরণস্বরূপ VBox Headless.exe, যেহেতু এর জন্য কোট প্রয়োজন হবে এবং শিরোনাম হিসাবে স্বীকৃত হবে this


সামগ্রিকভাবে, প্রথম (সুস্পষ্ট শিরোনাম) পদ্ধতিটি সম্ভবত আরও ভাল। এটি মাইক্রোসফ্টের পক্ষ থেকে একটি খারাপ নকশা পছন্দ ছিল, "সত্যউক্ত বাক্যগুলিতে প্রথম যুক্তিটি কি যুক্ত?" পরিবর্তে তাদের সত্যই শিরোনামের জন্য একটি সুইচ যুক্ত করা উচিত ছিল।


এর জন্য আপনাকে অনেক ধন্যবাদ :) যদিও আমি জানি start /bযে ভার্চুয়াল মেশিনটিকে পটভূমিতে রাখবেন না। আমাকে তখন অন্য কিছু নিয়ে আসতে হবে।
প্যাট্রিক

আপনি যদি কেবল আউটপুট ( stdout) চাপতে চান >nulতবে শেষ পর্যন্ত একটি যুক্ত করুন । >nul 2>nulউভয় স্বাভাবিক আউটপুট এবং ত্রুটি ( stderr) আউটপুট দমন করতে শেষে ব্যবহার করুন । কমান্ড প্রম্পট উইন্ডোটি অবশ্য খোলা রাখতে হবে।
বব

1
@ প্যাট্রিক যদি পাওয়ারশেল ব্যবহার করতে আপনার আপত্তি না থাকে তবে এই কমান্ডটি এমন উইন্ডোবিহীন প্রক্রিয়া খুলবে যা স্পাভিং (পাওয়ারশেল.এক্সই) প্রক্রিয়াটির সাথে সংযুক্ত নয়। অতএব পাওয়ারশেল উইন্ডোটি বন্ধ হতে পারে এবং ভিবক্সহিডলেস চলতে থাকবে। পাওয়ারশেলটি উইন্ডোজ 7. এর সাথে আসেStart-Process -FilePath 'C:\Program Files\Oracle\VirtualBox\VBoxHeadless.exe' -ArgumentList '-startvm "debian604 64"' -WindowStyle Hidden
বব

3

আসলে গৃহীত উত্তর এখনও সমাধান নয় still কমান্ডটি কার্যকর করা হয়েছিল যেখানে সেমিডি উইন্ডোটি বন্ধ করা এতে চলমান ভার্চুয়াল মেশিনের সাহায্যে ভিবক্সহেডলেস প্রক্রিয়াটিকে হত্যা করবে।

নীচের পদ্ধতির ব্যবহার করা হবে পাওয়ারশেলকে একটি স্বাধীন প্রক্রিয়া চালাবে run

সেন্টিমিটারে, চালান:

cd "c:\Program Files\Oracle\VirtualBox"
vboxmanage list vms

এটি এমন কিছু ফিরে আসবে:

"Webserver LAP" {8748b594-7e2d-4d8d-8785-999940766754}

এখন ইউআইডি নিন এবং নিম্নলিখিতগুলি চালান (এখনও সেন্টিমিটারে থাকবেন):

powershell start-process 'C:\program files\oracle\virtualbox\vboxheadless' '-s 8748b594-7e2d-4d8d-8785-999940766754' -WindowStyle Hidden

এই নিবন্ধ লেখক ধন্যবাদ ।


ইন আমার নিজের উত্তরে আমার মন্তব্য আমি ইতিমধ্যে "VBox headlessly চলমান" জন্য একটি বিকল্প পদ্ধতি প্রদান করেছেন। আমার উত্তর নিজেই "এর সাথে যুক্তিগুলি পাস করার start" প্রশ্নের সমাধান করে ।
বব

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