كيفية تحديد متغير البيئة في أمر الإدخال من SU
سؤال
هذا الأمر له إخراج فارغ.
su user -c "ABC=abc;echo $ABC"
أي فكرة ، كيف يمكنني تحديد متغير في أمر الإدخال؟
المحلول
تغيير اقتباساتك إلى اقتباسات واحدة. تسمح عروض الأسعار المزدوجة باستبدال المتغير في البيئة الحالية حيث لم يتم تعيينها بعد. لمعرفة الفرق ، جرب نسختك مع $USER
وقارنها بهذا:
su user -c 'ABC=abc; echo $ABC; echo $USER'
نصائح أخرى
إذا كنت تستخدم متغير شل Bourne:
ABC=abc su user -c 'echo $ABC'
إذا لم يكن كذلك ، استخدم ENV.
env ABC=abc su user -c 'echo $ABC'
لا تنتمي إلى StackOverflow