Tengo el siguiente problema: en cada máquina que ejecuta Postgresql hay un usuario especial postgres . Este usuario tiene acceso administrativo al servidor de la base de datos.
Ahora quiero escribir un script Bash que ejecute un comando de base de datos con psql como postgres de usuario (psql se ejecutará como postgres de usuario , no el script). Hasta ahora, eso no sería un problema: podría ejecutar el script como usuario postgres .
Sin embargo, quiero escribir la salida de psql en un archivo en un directorio donde postgres no tiene acceso de escritura.
¿Cómo puedo hacer eso?
Sin embargo, pensé en cambiar los EUID en el script mismo:
- No pude encontrar una manera de cambiar el EUID en un script Bash
- ¿Cómo puedo cambiar el EUID cuando uso algo como
psql -U postgres -c "<command>" > file
?