リモートホストAの.bashrcファイルを介して供給される関数があります。リモートホストAで「which」を使用すると、関数本体が出力として取得されます。別のホストBからリモートでsshを介して実行する必要があります。現在、すべての試行は「コマンドが見つかりませんエラー」で終了しています。私はすでにに渡そうとしました
ssh A "source /home/user/.bashrc && function "
、これは役に立ちません。また、sshに-tキーを使用してpseudo-ttyを強制的に送信させてみました。両方のホストのSHELLはbashです。ホストAのsshlocalhostは、引き続き機能ステータスを使用可能にします。
出力:
[user@hostA ~]$ which status
status is a function
status ()
{
dos -s $*
}
[user@hostB ~]$ ssh hostA " source /home/user/deploy/bin/_bashrc && status all "
ls: : No such file or directory
bash: status: command not found