~$HOMEবেশ কয়েকটি শেল সরবরাহ করার জন্য এটি একটি উপনাম , তবে $HOMEএটি সর্বজনীন। $HOMEআসলে শেলটি এখানে পরিবেশগত ভেরিয়েবল Hোকাতে (বিকল্প) ব্যবহার করতে বলে। বেশ কয়েকটি বিভিন্ন পরিবেশগত পরিবর্তনশীল রয়েছে যা প্রতিস্থাপন করা যেতে পারে, envএকটি তালিকার জন্য দৌড়ে চেষ্টা করুন । নোটটি ~শব্দের শুরুতে না থাকলে সর্বদা স্বীকৃত হয় না। তুলনার জন্য এই দুটি কমান্ড চেষ্টা করুন:
ls /~
ls /$HOME
প্রথমটি এক্সের এক্সিকিউটেবল হিসাবে প্রেরণ করা হয় /~যা এরপরে ~রুট ডিরেক্টরিতে ডাকা একটি ফাইলটি দেখার চেষ্টা করে , দ্বিতীয়টি প্রসারিত হয় $HOMEএবং হয়ে যায় //home/userযা কমান্ড-লাইন আর্গুমেন্ট হিসাবে এক্সিকিউটেবলের কাছে প্রেরণ করা হয়। সমস্ত POSIX সিস্টেম (POSIX UNIX এবং লিনাক্স সিস্টেমগুলি কীভাবে পরিচালিত হয় তার স্ট্যান্ডার্ড) একাধিক স্ল্যাশকে একটি স্ল্যাশের সাথে একইরূপে চলাচলের অনুমতি দেয় তাই //home/userবলা বাহুল্য /home/user। ~usernameপাসওডিডি ফাইলের ব্যবহারকারীর নাম সন্ধান করার জন্য এবং তাদের হোম ডিরেক্টরিটি ফিরিয়ে দেওয়ার জন্য শেলকে বলা করার শর্টকাট। সমতুল্য কোন পরিবেশের পরিবর্তনশীল নেই। এই সমস্ত প্রতিস্থাপন শেল দ্বারা সম্পন্ন হয় এবং তাদের বেশিরভাগ দ্বারা সমর্থিত হয় তবে কেবল পরিবেশের ভেরিয়েবলগুলি $HOMEসমস্ত শেল দ্বারা সমর্থিত হওয়ার নিশ্চয়তা দেয়। এছাড়াও,cdআসলে একটি বিল্ট-ইন কমান্ড is এটি একটি বিশেষ নির্দেশ যা শেলকে নিজেই ডিরেক্টরি পরিবর্তন করতে বলে tells এটি অন্যান্য শেল বিল্ট-ইনগুলির মতো নয় echoযা পৃথক নির্বাহযোগ্য হিসাবে প্রয়োগ করা যেতে পারে কারণ এটি শেল প্রক্রিয়াটির একটি মৌলিক বৈশিষ্ট্য পরিবর্তন করতে ব্যবহৃত হয়। echoপারফরম্যান্স কারণে নিছক একটি শেল অন্তর্নির্মিত, তবে ইউনিক্সের ভাল পুরানো দিনগুলিতে এটি কেবল নিজের এক্সিকিউটেবল হিসাবে উপলব্ধ ছিল /bin/echo।