sudo로 실행해야하지만 실행 한 sudo가 아닌 사용자의 이름을 고려해야하는 bash 스크립트를 만들고 싶습니다. 따라서 사용자 bob
가 실행하면 실행 한 사람 인지 알고 sudo ./myscript.sh
싶습니다 .myscript.sh
bob
내부를 살펴 봅시다 myscript.sh
:
USER=$(whoami)
# Do something that takes into account the username.
프로세스를 생성 한 사용자의 이름을 어떻게 알 수 있습니까? 보다 구체적으로는, 내가 대신 무엇을 사용해야 whoami
얻을 bob
하지 root
?
왜 편집하지 않습니까? 지금 해결되었습니다.
—
marcio 2016 년
너무 사소한 편집은 적어도 6 자 이상이어야하며 적어도 추천 된 것이어야합니다.
—
nyuszika7 시간
알았어요 팁 주셔서 감사합니다 : DI는 일반적
—
marcio 2016 년
#!/usr/bin/env bash
으로 내 bash 스크립트에 이와 같은 해시 뱅을 넣습니다 .
해시 뱅은 명시 적으로 호출
—
nyuszika7h
sh
하거나 다른 것을 호출하면 무시됩니다 .
USER=$(whoami)
. (가) 있습니다USER
이미 쉘 내부 변수로 존재한다. 또한 bash 스크립트 인 경우 POSIX 호환 기능의 하위 집합 만있는를 사용하여 실행 하지 마십시오sh
.