Tengo un script que comprueba si un archivo está actualizado.comparando cadenas en bash
updatedate=`ls -l file | sed -e 's/ */ /g' | cut -d' ' -f7` #cut the modification time
nowdate=`date +"%H:%M"`
echo "$updatedate $nowdate"
if [ "$updatedate"="$nowdate" ]
then
echo 'OK'
else
echo 'NOT OK'
fi
Pero cuando lo ejecuto, la comparación siempre es verdadera:
$ ./checkfile
10:04 10:07
OK
$ ./checkfile
10:07 10:07
OK
¿Por qué?
[es una abreviatura de prueba, vea http://pubs.opengroup.org/onlinepubs/009695399/utilities/test.html (ese comentario es para el OP);) –