আমার এমন একজন ব্যবহারকারী আছেন যে কোনও ডট-ফাইলে $ PATH এ কোনও পরিবর্তন করেন নি: এটি হ'ল সিস্টেম ডিফল্ট সেটিংস। একটি লগইন শেল থেকে:
$ ssh example.com
user@example.com:~$ cat /tmp/hello.hs
#!/bin/bash
echo "$SHELL"
echo "$PATH"
user@example.com:~$ /tmp/hello.hs
/bin/bash
/usr/local/bin:/usr/bin:/bin
ঠিক যেমন নির্দিষ্ট করা হয়েছে /etc/profile
। এটি আমি বরং অপ্রত্যাশিত মনে করি:
$ ssh example.com '/tmp/hello.sh'
/bin/bash
/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
যেমনটি আমি বলেছিলাম, $ PATH ইন ~/.bashrc
, না কোনও পরিবর্তন নেই /etc/bash.bashrc
। না ~/.ssh/environment
হয়। ssh(1)
ঘোষণা করে যে এনভায়রনমেন্ট ভেরিয়েবল PATH
হল
ডিফল্ট PATH তে সেট করুন, ssh সংকলনের সময় নির্দিষ্ট হিসাবে specified
তবে স্ট্যাকওভারফ্লো থেকে এই থ্রেড এবং এই মেইলিং তালিকার নিবন্ধটি সুপারিশ করে যে আমি কোনও শেল স্টার্টআপ ফাইল ইত্যাদির মধ্যে দিয়ে / / / প্রোফাইল পরিবর্তন করে কোনও প্রদত্ত কমান্ডের জন্য $ PATH প্রভাবিত করতে সক্ষম হওয়া উচিত should
এখানে কি হচ্ছে?