Saya memiliki masalah berikut: Pada setiap mesin yang menjalankan Postgresql ada postgres pengguna khusus . Pengguna ini memiliki akses administratif ke server database.
Sekarang saya ingin menulis skrip Bash yang mengeksekusi perintah database dengan psql sebagai postgres pengguna (psql akan dieksekusi sebagai postgres pengguna , bukan skrip). Sejauh ini, itu tidak akan menjadi masalah: Saya hanya bisa menjalankan script sebagai postgres pengguna .
Namun, saya ingin menulis output psql ke file di direktori di mana postgres tidak memiliki akses tulis.
Bagaimana saya bisa melakukan itu?
Saya berpikir tentang mengubah EUID dalam skrip itu sendiri, namun:
- Saya tidak dapat menemukan cara untuk mengubah EUID dalam skrip Bash
- Bagaimana saya bisa mengubah EUID saat menggunakan sesuatu seperti
psql -U postgres -c "<command>" > file?