Come ottengo il corretto $ USER se eseguo uno script di shell con sudo?
Li eseguo come script postinstall in un pacchetto di installazione Mac, dove vengono automaticamente aggiunti automaticamente, ma ho bisogno di fare cose con il nome utente.
$ HOME è corretto, però. Il metodo inelegante sarebbe quello di estrarre il nome dal percorso di casa, ma mi chiedo se c'è un modo naturale per farlo.
Non riesco a influenzare il modo in cui vengono chiamati gli script, poiché è una chiamata automatica all'interno dell'installer.
Per quelli che atterrano qui perché gnome-terminal ha abbandonato il supporto per 'logname', questo sembra funzionare bene' $ (logname 2>/dev/null || echo $ SUDO_USER) '. Testato anche su MacOS. Segnalazione di bug: https://bugzilla.gnome.org/show_bug.cgi?id=747046 – tresf