2012-07-30 13 views
6

के माध्यम से नहीं मिला अगर मैं तैनाती उपयोगकर्ता के रूप में अपने VPS में SSH और bundle -v चलाने मैं Bundler version 1.1.5 पाने की उम्मीद के रूप में।बंडल ssh

अगर मैं ssh [email protected] bundle -v चलाने के लिए, तो मैं देख रहा हूँ bash: bundle: command not found

क्यों बंडल नहीं है ssh के माध्यम से आदेशों चल दिखाया जा रहा है?

अधिक जानकारी

$ cat ~/.bashrc 

# ~/.bashrc: executed by bash(1) for non-login shells. 
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) 
# for examples 

if [ -d "${RBENV_ROOT}" ]; then 
    export PATH="${RBENV_ROOT}/bin:${PATH}" 
    eval "$(rbenv init -)" 
fi 

# If not running interactively, don't do anything 
[ -z "$PS1" ] && return 

उत्तर

4

जब आप चलाएँ:

ssh [email protected] 

आप दूरस्थ होस्ट, कि अपने खोल चलेगा (... बैश के लिए इसका मतलब है, जिस पर एक लॉगिन खोल मिलता है। ..) .bash_profile या .profile या समकक्ष के साथ ही अपने प्रति-खोल आरंभीकरण फ़ाइल।

जब आप चलाएँ:

ssh [email protected] some_command 

यह एक लॉगिन खोल शुरू नहीं करता है, तो यह केवल प्रति-खोल आरंभीकरण फ़ाइल चलाता है (उदाहरण के लिए, .bashrc)।

समस्या आप आम तौर पर वर्णन किया है मतलब है कि आप सब कुछ काम करने के लिए अपने .profile फाइल में कुछ (आमतौर पर एक वातावरण चर सेटिंग) की जरूरत है।

0

.profile केवल लॉगिन गोले के लिए भरी हुई है।

ssh [email protected] 

आप एक लॉगिन खोल दे देंगे, लेकिन

ssh [email protected] bundle -v 

नहीं होगा।

आप .bashrc में rbenv सुंदरता डाल सकता है, लेकिन एक एक शॉट सौदा यह क्लीनर बस इतनी तरह अपने ssh आदेश में यह हमले के लिए हो सकता है अगर यह है:

ssh [email protected] "export PATH=\$HOME/.rbenv/bin:\$PATH; eval \"\$(rbenv init -)\"; bundle -v"