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


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.