2011-05-10 18 views
33

बैश में के लिए एक वातावरण चर सेट करने के लिए कैसे, मैं इस तरह सिर्फ एक आदेश के लिए एक अस्थायी वातावरण चर सेट कर सकते हैं:csh में सिर्फ एक आदेश/tcsh

LD_LIBRARY_PATH=/foo/bar myprogram 

मैं csh/tcsh में कुछ इसी तरह कर सकते हैं ? मैं

setenv LD_LIBRARY_PATH /foo/bar; myprogram; unsetenv LD_LIBRARY_PATH 

कर सकता है, लेकिन यह वैरिएबल के किसी भी पिछले मूल्य को खो देगा।

उत्तर

49

csh में, आप कोशिश कर सकते हैं या तो env:

% env LD_LIBRARY_PATH=/foo/bar myprogram 

या, एक subshell:

% (setenv LD_LIBRARY_PATH /foo/bar; myprogram) 
+2

मैं दूसरे संस्करण में बराबर के चिह्न के अभाव के कारण अप फिसल गया। दिखाता है कि मुझे ध्यान से पढ़ने की जरूरत है;) – drewish

+0

पहला व्यक्ति बाहरी प्रोग्राम (एनवी) का उपयोग कर रहा है जो टीसीएस नहीं है, इसलिए आप एलियस जैसे अपना संदर्भ खो देंगे। इसलिए मैं दूसरे का उपयोग करने का सुझाव दूंगा। – orzel

संबंधित मुद्दे