私は3つの異なる問題を解決しているので、ソースコードを3つの異なるディレクトリに複製しました。
1) /nobackup/vivek/dev1/<source_code>..
2) /nobackup/vivek/dev2/<source_code>..
3) /nobackup/vivek/dev3/<source_code>..
.bashrc
すぐにそのモジュールに移動できるように、ファイル内のいくつかのモジュールに複数のエイリアスを作成しました。私は環境変数という名前を使用しましたが、CDR
その値は私が作業している問題とディレクトリによってdev1
異なります。dev2
dev3
.bashrc
私のファイルにある別名の1つの例
alias acl='cd /nobackup/vivek/$CDR/<source_code>../acl'
環境変数の値を手動で変更する必要があります。たとえば、問題番号を処理したい場合は、3次に環境変数CDR
をdev3
。
export CDR=dev3.
問題ないからです。 3. dev3
ieフォルダにある必要があります/nobackup/vivek/dev3/<source_code>..
同様に、問題番号を解決している場合。 1または2の環境変数を手動でエクスポートする必要がありますdev1
。dev2
export CDR=dev1 or export CDR=dev2
CDR
SSH自体で環境変数を設定したいと思います。タスクを実行するために、次のコマンドを試しました。
ssh -t [email protected] 'export CDR=dev1'
or
ssh -t [email protected] 'export CDR=dev2'
上記のsshコマンドの実行時にパスワードを入力すると、接続は終了します。
[Eメール保護]パスワード:
122.11.33.21への接続が閉じられました。
誰でも私を助けることができますか?なぜ接続が終了したのかわかりません。ログイン時に環境変数を設定する他の方法はありますか?
答え1
bash
標準設定ファイル、rcファイルなどをロードするために(または優先シェル)(または優先シェル)をログインシェルで起動しようとしています。
ssh -t user@server "export var=VALUE ; bash -l"
または@theyが指摘したように、より短い表記法
ssh -t user@server "var=VALUE bash -l"
それもします。