উইন্ডোজে আপনি একটি একক কমান্ডের জন্য পরিবেশ পরিবর্তনশীল কীভাবে সেট করবেন? [প্রতিলিপি]


22

উইন্ডোজে ENVVAR=abc commandইউনিক্সের মতো একক কমান্ডের জন্য পরিবেশের পরিবর্তনগুলি সেট করার কোনও উপায় আছে কি ?

setউইন্ডোজে কমান্ড দ্বারা নির্ধারিত ভেরিয়েবলগুলি নিম্নলিখিত কমান্ডগুলির জন্য রয়ে গেছে বলে মনে হয় তবে এটি আমি চাই না।


আমি মনে করি আপনাকে সেগুলি নিজেই আনসেট করতে হবে।
জিনা

উত্তর:


29

একটি একক কমান্ডের জন্য পরিবেশের ভেরিয়েবল সেট করার কোনও উপায় আছে কি?

বর্তমান cmdশেল থেকে:

আপনাকে নিজেই ভেরিয়েবল সাফ করতে হবে।

set ENVVAR=abc && dir & set ENVVAR=

একটি ব্যাচ ফাইল থেকে:

আপনি ব্যবহার করতে পারেন setlocalএবং endlocal

@echo off
setlocal 
  set ENVVAR=abc && dir
endlocal

একটি শিশু cmdশেল ব্যবহার করুন :

আপনি cmd /cএকটি শিশু শেল তৈরি করতে ব্যবহার করতে পারেন ।

চলকটি শিশু শেলের মধ্যে সেট করা থাকে এবং পিতামাত শেলকে প্রভাবিত করে না (যেমন জেএমপিসি 26 এর মন্তব্যে উল্লেখ করা হয়েছে )।

cmd /C "set ENVVAR=abc && dir"

আরও পড়া

  • উইন্ডোজ সিএমডি কমান্ড লাইনের একটি এজেড সূচক - উইন্ডোজ সেমিডি লাইন সম্পর্কিত সমস্ত কিছুর জন্য একটি দুর্দান্ত রেফারেন্স।
  • সেন্টিমিডি - একটি নতুন সিএমডি শেল শুরু করুন এবং (allyচ্ছিকভাবে) একটি কমান্ড / এক্সিকিউটেবল প্রোগ্রাম চালান।
  • এন্ডলোকাল - একটি ব্যাচের ফাইলে পরিবেশের পরিবর্তনের শেষ স্থানীয়করণ। এক ব্যাচ ফাইল থেকে অন্য ব্যাচেবলগুলি পাস করুন।
  • পুনঃনির্দেশ - পুনঃনির্দেশ অপারেটরগুলি।
  • সেট - সিএমডি এনভায়রনমেন্ট ভেরিয়েবলগুলি প্রদর্শন করুন, সেট করুন বা অপসারণ করুন। এসইটি দিয়ে করা পরিবর্তনগুলি কেবলমাত্র বর্তমান সিএমডি সেশনের সময়কালের জন্যই থাকবে।
  • setlocal - একটি ব্যাচ ফাইলে পরিবেশের ভেরিয়েবলের দৃশ্যমানতা নিয়ন্ত্রণের জন্য বিকল্পগুলি সেট করুন।

আরেকটি বিকল্প হ'ল পৃথক cmdপ্রক্রিয়া চালু করা এবং সেগুলি সেট করা। যেমন cmd /C "set ENVVAR=abc && dir",। যেহেতু এটি পিতামাতার প্রক্রিয়াটিকে প্রভাবিত করবে না, প্রস্থান করার সময় এটি কার্যকরভাবে "সাফ" হবে।
jpmc26

@ jpmc26 ভাল। ধন্যবাদ। উত্তর যুক্ত করা হয়েছে।
ডেভিডপস্টিল

কমান্ড ব্যর্থ হলে সেই প্রথম পদ্ধতিটি ভেরিয়েবল সাফ করবে না।
কেউ

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