bash - not - Variables de script de Shell: comando no encontrado
bash command not found solucionado (3)
Es una buena idea usar llaves para separar el nombre de la variable cuando está incrustando una variable en otro texto:
#!/bin/bash
J=4
FACE_NAME="eig${J}.face"
USER_DB_NAME="base${J}.user"
El punto hace el trabajo aquí para usted, pero si hubiera algún otro personaje allí, podría interpretarse como parte del nombre de la variable.
Esta pregunta ya tiene una respuesta aquí:
Tengo un script de shell que me permitirá acceder a variables globales dentro del script, pero cuando intento crear el mío, responde con: comando no encontrado.
#!/bin/bash
J = 4
FACE_NAME = "eig$J.face"
USER_DB_NAME = "base$J.user"
Cuando ejecuto el script anterior, obtengo:
./test1.sh line 2: J: command not found
./test1.sh line 3: FACE_NAME: command not found
./test1.sh line 4: USER_DB_NAME: command not found
¿¿Algunas ideas?? Estoy usando Cygwin en Windows XP.
Pruebe esto (observe que he eliminado los espacios de cualquier lado de =
):
#!/bin/bash
J="4"
FACE_NAME="eig$J.face"
USER_DB_NAME="base$J.user"
A Bash no le gustan los espacios cuando declara variables; también es mejor hacer que todos los valores sean citados (pero esto no es tan esencial).
no dejes espacios entre "="
J=4
FACE_NAME="eig${J}.face"
USER_DB_NAME="base${J}.user"