Linux

linux + 從遠端機器獲取標準輸出

  • June 30, 2016

在破壞腳本 /tmp/script.bash 之後,是否可以從遠端機器獲取標準輸出 - 100 或 1 ?

ssh $remote_machine /tmp/script.bash

echo $? ( from remote machine script - not from ssh ! )

在遠端機器上-

more /tmp/script.badsh

#!/bin/bash

command

[[ $? -eq 0 ]] && exit 100 || exit 1

似乎您想要遠端腳本 ( $?) 的退出值,而不是標準輸出(根據您的標題輸出的腳本)

ssh 手冊頁這樣說

ssh 以遠端命令的退出狀態退出,如果發生錯誤,則以 255 退出。

因此,如果您的腳本正常工作,它將返回 100。如果不是,則有幾種可能性

  • command沒有以 0 退出
  • [[ ... ]]的不正確,看起來正確,我認為- eq應該是-eq1。

1 OP 編輯了他們的問題並刪除了上面第 2 點中的明顯錯誤。我們只能得出結論,第 1 點是正確的。

引用自:https://serverfault.com/questions/787083