我想用SSH登錄到服務器上的交互式shell,登錄後執行兩條命令。如何通過SSH登錄遠程服務器後執行一系列命令?
這工作:ssh [email protected] -t "cd /home/user2; bash --login"
以下工作無:
ssh [email protected] -t "cd /home/user2; bash --login -c 'source /home/user2/.bashrc'"
ssh [email protected] -t "cd /home/user2; bash --login -c source /home/user2/.bashrc"
ssh [email protected] -t "cd /home/user2; bash --login source /home/user2/.bashrc"
ssh [email protected] -t "cd /home/user2; bash --login; source /home/user2/.bashrc"
當我打電話SSH與-v標誌,我看到SSH會話退出之前如下:
debug1: Sending command: cd /home/user2; bash --login -c "source /home/user2/.bashrc"
debug1: client_input_channel_req: channel 0 rtype exit-status reply 0
我知道這可能看起來很奇怪;我需要以user1身份登錄,以便我可以使用只能由user1運行的軟件(合法),但我想運行我的個人.bashrc並在我的個人工作目錄中工作。我無法修改/home/user1/.bashrc。有沒有更好的方法來做我想做的事情?
謝謝,這正是我需要的。我認爲可能有一種方法來指定一個RC文件,但我從來沒有必要做這樣的事情。 – monguin