0

サーバーが実行されているかどうかを知りたいのですが、そうでない場合は起動したいと思います。このシナリオでは、次の bash スクリプトを作成しました

ssh -t machine "cd /to/the/bin/path 
  && if [ -n $(sudo -u dev ps U dev | grep server_name | awk 'FNR == 1 {print $1}') ] 
     then 
          echo 'podsvr is running with 
             id $(sudo -u dev ps U dev | grep POD | awk 'FNR == 1 {print $1}')' 
     else 
          sudo -u dev sfservice server_name start 
     fi
"

上記のプログラムを実行すると、次のエラーが発生します

bash: -c: 1 行目: 構文エラー: 予期しないファイルの終わり

この点で誰かが私を助けてくれませんか

〜スニル

4

3 に答える 3

2

bash では、そのような一重引用符をネストすることはできません。次の 2 番目のオカレンスを変更します。

 'FNR == 1 {print $1}'

に:

'\''FNR == 1 {print $1}'\''
于 2013-05-17T05:45:02.793 に答える