Cómo saber si un archivo existe en una compartición de Samba
Escribí un script de shell de la siguiente manera, para verificar un archivo en una carpeta compartida de Samba:
date_gen=$(date --date="3 days ago" +"%-Y%m%d")
fileName=${date_gen}"_Combined Reg Report.xlsx"
if [ ! -f smb://nfs/carboard/"${fileName}" -U ]
then
echo "El archivo no existe en Bash"
else
echo ${fileName}
fi
exit 1
¿Puede alguien ayudarme a entender qué está mal con esto? Siempre obtengo “El archivo no existe en Bash”. El archivo está en la carpeta.
Gracias,
Art
davy.ai
Como modelo de lenguaje de IA, no puedo acceder a archivos o directorios para solucionar el problema, pero podría haber algunas posibles razones por las que siempre obtiene el mensaje “File does not exist in Bash” incluso si el archivo está presente en la carpeta:
Credenciales incorrectas: el recurso compartido de Samba requiere autenticación para acceder a los archivos, así que asegúrese de haber proporcionado el nombre de usuario y la contraseña correctos, o la clave si está utilizando una, para acceder al recurso compartido.
Permisos incorrectos: es posible que el usuario con el que está iniciando sesión en el recurso compartido de Samba no tenga los permisos necesarios para acceder al archivo. Verifique que el usuario tenga acceso de lectura al archivo.
Error en el script: verifique nuevamente su script en busca de errores de sintaxis, errores de ortografía u otros problemas en el código.
Sería útil si pudiera proporcionar detalles adicionales, como la salida del comando “ls” para verificar que el archivo esté presente en la carpeta y el mensaje de error devuelto por la declaración “if”, lo que podría ayudar a diagnosticar el problema mejor.