0

この質問にはいくつかの説明が必要なようです。

現在、リモートホストで tmux セッションを開始または復元する ssh ラッパー bash 関数を作成しました。

その存在はユーザーに対して完全に透過的です。入力するだけで、内部で定義されているssh hostため、実際の ssh の代わりに実行されます。function ssh() { ... }.bash_profile

今、私はこの問題を抱えています。ごく一部のホストでは、実際のシェルがなく、理解できないコマンドを受信した場合に ssh 接続をドロップする疑似シェルがあります。例: NetScaler、Synology (を使用ash)、CISCO ルーターなど

私がやりたいことは、ssh() ラッパー内にログインを埋め込んで、これらのマシンで失敗しないようにすることです。最初にブラックリストを作成しましたが、すぐに管理が難しくなりました。適切な修正が必要です。

ssh host.example.com
X11 forwarding request failed on channel 0
ash: darwin: unknown operand
ash: md5sum: not found
ash: syntax error: 0x
Connection to host.example.com closed.

>$ echo $?
0

bash 関数内からこの問題を解決するにはどうすればよいですか?

4

0 に答える 0