Saya mendapat skrip yang membutuhkan sudo, tetapi skrip harus mengatur parameter sesuai dengan pengguna asli, seperti:
chown "${USER}:${USER}" dir
Jika saya mengaturnya di bawah sudo, saya hanya berakhir dengan chmod root:root
, yang tidak membantu.
Jadi bagaimana saya bisa mendapatkan nama pengguna sebelum sudo?
bash
sudo
user-accounts
e-satis
sumber
sumber
Anda dapat menggunakan
SUDO_USER
variabel:Dari halaman manual sudo :
sumber
sudo echo $SUDO_USER
tidak menghasilkan apa-apa?SUDO_USER dapat ditimpa oleh pengguna.
Anda harus menggunakan 'siapa saya' atau 'nama log' untuk mendapatkan nama pengguna asli
Datang dari /programming/4598001/how-do-you-find-the-original-user-through-multiple-sudo-and-su-comm-commands
sumber
logname
danwho am i
pekerjaan.sudo: sorry, you are not allowed to set the following environment variables: SUDO_USER
Jadi mungkin masih aman, masih harus memverifikasi ini.