0

以下を使用して、ログ ファイルの最後の行を読み取るシェル スクリプトを設定しています。

tail -1 "/path/to/gdscript.log"

..これは、スクリプトの最後の行をうまくエコーしています。ログの最後の行は、プロセスが成功したか失敗したかを示しているため、次のように簡単なエコーを実行しようとしています (これは私が失敗しているビットです):

if [ (tail -1 "/path/to/gdscript.log")  == "Process Complete" ]; then
echo "Data Transfer OK"
else
echo "Data Transfer Failed"
exit 1
fi

..しかし、上記のスクリプトを使用すると、次のようになります。

./gdscript.sh: line 14: syntax error near unexpected token `tail'

ログファイルの最後の行から作業できるように、上記の IF ゲートをフォーマットする方法を知っている人が教えてくれますか? 私はシェルスクリプトを初めて使用するので、助けていただければ幸いです。

ありがとう、ポールG

4

2 に答える 2

4

コマンドの出力を取得するには、$(cmd...). だから私はあなたが意味すると思います:

if [ "$(tail -1 '/path/to/gdscript.log')"  == "Process Complete" ]; then
...
于 2012-09-24T02:24:10.810 に答える
0

あなたが使用する必要があります:
if [ $(tail -1 /path/to/gdscript.log) == "Process Complete" ]; then

于 2012-09-24T03:29:41.800 に答える