আমি কীভাবে পাওয়ারশেলের এক লাইনে একাধিক কমান্ড চালাব?


268

একটি সেন্টিমিডি প্রম্পটে, আপনি এক লাইনে দুটি কমান্ড চালাতে পারেন:

ipconfig /release & ipconfig /renew

আমি যখন এই কমান্ডটি পাওয়ারশেলে চালিত করি তখন আমি পাই:

Ampersand not allowed. The `&` operator is reserved for future use

পাওয়ারশেলের কি এমন কোনও অপারেটর রয়েছে যা আমাকে দ্রুত &একটি সেমিডি প্রম্পটে সমপরিমাণ উত্পাদন করতে দেয় ?

এক লাইনে দুটি কমান্ড চালানোর যে কোনও পদ্ধতিই করবে। আমি জানি যে আমি একটি স্ক্রিপ্ট তৈরি করতে পারি, তবে আমি কাফের বাইরে কিছুটা সন্ধান করছি।


5
মজার দ্রষ্টব্য: সিরিয়াল পোর্ট এবং সিরিয়ালাইজেশনের মধ্যে এই প্রশ্নটি অনুসন্ধান করা কার্যত অসম্ভব।
ডেভিড

নার্দি হতে ... এটি অনুসন্ধান করা খুব সহজ। হিটগুলির একটি প্রাসঙ্গিক সেট পাওয়া বেশ শক্ত। :) (দুর্দান্ত প্রশ্নের জন্য +1)
কনরাড ভিল্টারস্টন

উত্তর:


384

পাওয়ারশেলে কমান্ডগুলি শৃঙ্খলাবদ্ধ করতে একটি সেমিকোলন ব্যবহার করুন:

ipconfig /release; ipconfig /renew

9
তারা কি সমান্তরাল বা ধারাবাহিকভাবে চলবে?
তারকাস

19
এটি cmd.exe এর & অপারেটরের মতো ক্রমানুসারে চালাবে।
স্কিজি

43
যদিও বড় পার্থক্য আছে - ";" প্রথম ব্যর্থ হলেও দ্বিতীয় কমান্ড চালায় runs
ইভান

10
উপরে বর্ণিত হিসাবে এটি সেন্টিমিডি.এক্স.এই এর আচরণও।
স্কিজি

7
@ রাফি হ্যাঁ, চেষ্টা করুন {কমান্ড-ওয়ান-স্টপ} ক্যাচ {কমান্ড-টু}
ডেভ_জে

30

পূর্বের উত্তর হিসাবে বর্ণিত আদেশগুলি একটি সেমিকোলনকে লিঙ্ক করবে , যদিও &এমএস-ডস স্টাইল কমান্ড ইন্টারপ্রেটারে অপারেটরের সাথে আচরণের মূল পার্থক্য রয়েছে ।

কমান্ড ইন্টারপ্রেটারে, লাইনটি পড়ার পরে পরিবর্তনশীল প্রতিস্থাপন হয়। এটি কিছু ঝরঝরে সম্ভাবনা যেমন অস্থায়ী ছাড়াই ভেরিয়েবল অদলবদলের অনুমতি দেয়:

set a=1
set b=2
set a=%b% & set b=%a%
echo %a%
echo %b%

ফলাফল হবে:

2
1

আমি যতদূর জানি, পাওয়ারশেলের এই আচরণটির প্রতিলিপি দেওয়ার কোনও উপায় নেই। কেউ কেউ তর্ক করতে পারে যে এটি একটি ভাল জিনিস।

পাওয়ারশেলে এটি করার একটি উপায় আসলে রয়েছে:

$b, $a = $a, $b

এর ফলে ভেরিয়েবলের মানগুলি একক লাইন অদলবদল করে।


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