以下のコードでは、条件内のコマンドがif
正常に完了したかどうか、およびデータがターゲット ファイル temp.txt にプッシュされたかどうかを確認しようとしています。
検討:
#!/usr/bin/ksh
A=4
B=1
$(tail -n $(( $A - $B )) sample.txt > temp.txt)
echo "1. Exit status:"$?
if [[ $( tail -n $(( $A - $B )) sample.txt > temp.txt ) ]]; then
echo "2. Exit status:"$?
echo "Command completed successfully"
else
echo "3. Exit status:"$?
echo "Command was unsuccessfully"
fi
出力:
$ sh sample.sh
1. Exit status:0
3. Exit status:1
上記の終了ステータスが変化する理由がわかりません..テールコマンドの両方のインスタンスの出力が同一である場合。ここでどこが間違っているのでしょうか..?