Sudo ile yürütülmesi gereken ancak bunu yürüten sudo olmayan kullanıcının adını dikkate alması gereken bir bash betiği oluşturmak istiyorum. Yani kullanıcı bobçalışırsa sudo ./myscript.shben bunu yürütmek olduğunu myscript.shbilmek istiyorum bob.
İçine bakalım myscript.sh:
USER=$(whoami)
# Do something that takes into account the username.
Süreci oluşturan kullanıcının adını nasıl bilebilirim? Daha spesifik olarak, yerine ne kullanmalıyım whoamialmak bobdeğil root?
#!/usr/bin/env bashbenim bash scriptlerimde böyle bir hashbang koydu .
shveya başka bir şey ile çağırırsanız hashbang yok sayılır .
USER=$(whoami).USERZaten bir kabuk iç değişkeni olarak var olduğunu unutmayın . O bir betik görüyorsunuz Ayrıca, eğer yok kullanarak çalıştırmakshsadece özellikleri bir POSIX uyumlu alt kümesini olan,.