यदि आप यहाँ एक डॉक लिखना चाहते हैं और आप नहीं चाहते हैं कि डॉक का कोई भी विस्तार किया जाए या किसी विशेष वर्ण की व्याख्या की जाए, तो आप इस तरह एकल उद्धरण के साथ लेबल को उद्धृत कर सकते हैं:
$ cat >file <<'EOF'
echo "$ABC=home_dir"
EOF
हालाँकि, आपके उदाहरण में वर्णित आपकी स्थिति बहुत अधिक जटिल है, क्योंकि आप वास्तव में इस सामग्री को ssh के माध्यम से, एक दूरस्थ सिस्टम में, sudo द्वारा चलाया जा रहा है, जो एक शेल को भी आमंत्रित कर रहा है (और इसलिए कि शेल सामग्री का विस्तार करेगा भी)। आपको इस अधिकार को प्राप्त करने के लिए अधिक स्तरों की आवश्यकता है, लेकिन इसके साथ भी यह अभी भी काम नहीं करेगा क्योंकि सूडो को एक टर्मिनल की आवश्यकता होती है (इसलिए यह पासवर्ड मांग सकता है) और आपने स्टड से पुनर्निर्देशित किया है। यहां तक कि उपयोग करने ssh -t
से भी यहाँ मदद नहीं मिलेगी।
इसके अलावा मैं जोहान से सहमत हूं। यह स्पष्ट नहीं है कि यह वास्तव में आप क्या चाहते हैं; ध्यान दें कि शेल चर संदर्भ के लिए मान निर्दिष्ट करना कानूनी नहीं है, इसलिए यदि आप जिस फ़ाइल को बनाने का प्रयास कर रहे हैं वह शेल स्क्रिप्ट माना जाता है, तो यह काम नहीं करेगा जैसा आपने वर्णित किया है। हो सकता है कि यदि आप थोड़ा पीछे हटें और वर्णन करें कि आप वास्तव में क्या करना चाहते हैं, तो हम और अधिक मदद कर सकते हैं।