Per alcune macchine cloud che sto avviando, sto cercando di accedere a un file specifico, a syslog e al terminale / console.
Nella parte superiore degli script di installazione / cloud-init della mia macchina, ho quanto segue:
#!/bin/bash
exec &> >(tee "/tmp/box-setup.log" | logger -t box-setup)
apt-get install -y some-package
Funziona perfettamente con l'invio di output a un file e syslog, ma non viene inviato all'output al terminale.
In generale non avere un output terminale non è un grosso problema tranne quando sto eseguendo il debug da una console remota. Quando ciò accade, sono completamente cieco perché la console è vuota durante l'esecuzione dello script bash.
Esiste un modo semplice per utilizzare il bashreindirizzamento o altro per reindirizzare contemporaneamente tutti gli output (output standard con errore standard) a un file, syslog e il terminale?
Sto eseguendo Ubuntu 16.04.
exec &> >(tee /tmp/box-setup.log >(logger -t box-setup))