1

私はインターネットを見てきましたが、「解決策」はどれもうまくいきませんでした。コマンドの結果で2つの変数を作成し、それらをifと比較しようとしましたが、うまくいきません:(

#!/bin/bash

pre_result=`digest -a md5 -v $1`
md5=${pre_result:(-33)}

pre_result2=`digest -a md5 -v /respaldo/directorio`
md52=${pre_result2:(-33)}

if $md5 != $md52
then
    fecha=`date`
    `mkdir /respaldo/"$fecha"`
    `cp $1  /respaldo/"$fecha"/`
else
     echo ':('
fi

ご清聴ありがとうございました。下手な英語で申し訳ありません;)

4

1 に答える 1

3

条件式は、bashの角かっこで囲む必要があります。

したがって、ifステートメントは次のようになります。

if [[ $md5 != $md52 ]]
then
# do stuff
fi

このリンクには、bash条件式の詳細があります。

于 2012-05-16T22:25:35.297 に答える