sample.sh
위치 에 스크립트가 있습니다 /u01/dump
. 루트에서 실행합니다.
내 요구 사항은 sample.sh
스크립트를 실행하는 동안 SU(수퍼 유저)를 사용하여 oracle1 사용자로 로그인하고 /u02/dba/
디렉토리의 모든 파일을 표시해야 한다는 것입니다.
답변1
따라서 다음을 사용하는 것이 좋습니다.
su -l oracle1
답변2
이것은 더러운 해킹일 수도 있지만 작동할 것입니다 :)
oracle1 사용자의 레이블을 로 바꾸고 해당 홈 디렉토리를 스크립트에서도 사용되는 으로 바꿔 파일을 수정합니다 /etc/passwd
./bin/sh
ls
/u02/dba
su -l oracle1
sample.sh
이렇게 하면 사용자가 변경되는 스크립트를 실행할 때마다 해당 사용자의 홈 디렉터리 목록이 표시됩니다.