Como parte de este script, necesito poder verificar si el primer argumento dado coincide con la primera palabra del archivo. Si lo hace, salga con un mensaje de error; si no es así, agregue los argumentos al archivo. Entiendo cómo escribir la if
declaración, pero no cómo usarla grep
dentro de un script. Entiendo que grep
se verá algo así
grep ^$1 schemas.txt
Siento que esto debería ser mucho más fácil de lo que lo estoy haciendo.
Recibo un error "demasiados argumentos" en la if
declaración. Me deshice del espacio entre grep -q
y luego obtuve un error binario de operador esperado.
if [ grep -q ^$1 schemas.txt ]
then
echo "Schema already exists. Please try again"
exit 1
else
echo "$@" >> schemas.txt
fi
[
...]
y funcionará. Aunque probablemente desee citar su patrón:if grep -q "^$1" schemas.txt; then …