Pregunta

Tengo que comprobar si existe I del sistema de archivos, y si lo hace existir allí es de 300 MB de espacio en él.

Lo que tengo hasta ahora:

if [ "$(df -m /opt/IBM | grep -vE '^Filesystem' | awk '{print ($3)}')" < "300" ]
then
echo "not enough space in the target filesystem"
exit 1
fi

Esto arroja un error. Realmente no sé lo que estoy haciendo en la cáscara.

Mi mayor prioridad es AIX, pero estoy tratando de conseguir que funcione para HP y Sun también.

Por favor, ayuda.

-Alex

¿Fue útil?

Solución

Este es el código me de trabajo.

if [ "$(df -m /opt/IBM/ITM | awk 'NR==2{print ($3)}')" -lt "300" ]
then
    echo "not enough space in the target filesystem"
    exit 1
fi

Otros consejos

¿Qué hay de publicar el error? De todos modos, intente la siguiente sintaxis, es decir. entre dobles comillas y no:

if [[ $(...) < 300 ]]; then
    ...
fi

Desde bash

[[expresión]]

Devuelve un estado de 0 ó 1 dependiendo de la evaluación del condicional expresión expresión.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top