私はこのスクリプトからコードのリターンを取得しようとしている:終了コード
#!/bin/bash
echo "CM 1"
ssh -i key/keyId.ppk [email protected] "
grep blabla ddd
if [ ! $? -eq 0 ]; then exit 1; fi
"
echo $?
しかし、最後のコマンドecho $?
0を返す代わりの1
そして場合は、個別に実行してみてください(ない)スクリプトとして:
- sshコマンド:
ssh -i key/keyId.ppk [email protected]
- grepのblabla DDD =>私はMSG「はgrepを取得:DDD:そのようなありませんファイルまたはディレクトリ "
- :if [! $? -eq 0];次に出口1。 fi
- then:echo $? =>それは期待通りに1を返します
私のスクリプトではうまくいかない理由はありますか? $
は、単一引用符でエスケープされていないため
「何も返さない」とはどういう意味ですか?どのバージョンを使用していますか?それは私のためにうまく動作します。 – Jakuje
'ssh'の' -t'を使う理由は何ですか? –
@Raily Albeg Wein:特別な理由はありませんでした。@ – bbenjii123