जवाबों:
यदि आप चाहते हैं कि यह वैश्विक हो, तो संशोधित करें
/etc/profile
या करने के लिए एक स्क्रिप्ट जोड़ें
/etc/profile.d
यदि आप इसे उपयोगकर्ता-विशिष्ट होना चाहते हैं, तो संशोधित करें
/home/$USER/.profile
/usr/local/bin/pihole -c
विशिष्ट उपयोगकर्ता के ऑटोलॉगिन पर कमांड चलाने की कोशिश कर रहा है । इस लाइन को जोड़ा /home/$USER/.profile
- कुछ भी नहीं होता है। जब मैं स्क्रिप्ट जोड़ता हूं /etc/profile.d
तो यह काम करता है, लेकिन यह वैश्विक है और इसे तब भी चलाता है जब मैं ssh सत्र खोलता हूं (जो मैं चाहता हूं वह नहीं है)। को जोड़ना .bashrc
काम करता भी है, लेकिन किसी भी समय मैं खुले नए खोल चलाता है (जो नहीं जो मैं चाहता है)। सवाल: /home/$USER/.profile
काम करने से क्यों नहीं जोड़ा जाएगा ???
बस स्टार्टअप अनुप्रयोगों के लिए बैश स्क्रिप्ट जोड़ें।
कमांड फ़ील्ड में, दर्ज करें
bash /full/path/to/bash/script.sh/
यदि आप अधिक विशिष्ट होना चाहते हैं तो आप ~ / .bash_profile या ~ / .bash_login में भी कोड लिख सकते हैं।
और आप उदाहरण के लिए किसी भी स्क्रिप्ट को स्रोत कर सकते हैं:
if [ -f ~/.bashrc ]; then
source ~/.bashrc
fi
/etc/profile
या $HOME/.profile
या$HOME/.bash_profile
/etc/profile.d/yourscript.sh
अगर यह आउटपुट का उपयोग करता है, तो मैं अत्यधिक उपयोग करने की सलाह दूंगा। जब आप एक गैर-संवादात्मक सत्र का उपयोग करते हैं, तो आपको एक $TERM is not set
संदेश प्राप्त होगा । यह ssh प्रोटोकॉल का उपयोग करते समय ध्यान देने योग्य है, जैसे scp। आमतौर पर, एक बड़ी बात नहीं है, हालांकि, वीम को यह पसंद नहीं है और यह एक चेतावनी फेंक देगा। मुझे पता है कि वीम यहां का विषय नहीं है, लेकिन यह ध्यान देने योग्य है कि सभी एप्लिकेशन शालीनतापूर्वक $TERM is not set
चेतावनी को अनदेखा नहीं करेंगे ।
संक्षेप में, यदि स्क्रिप्ट आउटपुट उत्पन्न करती है, तो इसे पहली पंक्ति में निर्दिष्ट स्थानों पर रखें। हालांकि, यदि आप पर्यावरण को संशोधित कर रहे हैं और आपकी स्क्रिप्ट आउटपुट उत्पन्न नहीं करती है, तो बाद का उपयोग करें।
.sh
यदि आप अपनी स्क्रिप्ट को अंदर रखते हैं तो एक्सटेंशन होना चाहिए/etc/profile.d/
।chmode +x /etc/profile.d/myscript.sh
बेशक।