El comando ls -al dog RCS/dog,v
regresa
-rw-r--r-- 1 simon simon 0 Apr 13 19:25 dog
-r--r--r-- 1 simon simon 191 Apr 13 19:28 RCS/dog,v
indicando que RCS/dog,v
es más nuevo que dog
, todavía
if [[ RCS/$dog* -nt dog ]] ; then echo not older than dog ; else echo older than dog ; fi
devoluciones older than dog
. Dado que para un archivo que no termina en ,v esta comparación se realiza correctamente, parece haber un problema con los archivos que terminan en ,v
. ¿Alguien podría sugerir cómo solucionar este problema, por favor?
Respuesta1
En tu ejemplo, te refieres a unvariabledonde tu expresión espera unliteral:
if [[ RCS/$dog* -nt dog ]] ; then echo not older than dog ; else echo older than dog ; fi
Eso es,
Esta es una variable:
$dog
, y si no está configurado, obtendrá algo comoRCS/*
(o algo más en su lugar si$dog
pasa a estar configurado encat
).Esto es literal:
dog
, yRCS/dog*
coincidiríaRCS/dog,v