su 옵션(다른 사용자로 명령 실행)

su 옵션(다른 사용자로 명령 실행)

안녕하세요 StackExchange 커뮤니티입니다.
이 기사는 다음과 같습니다.su 옵션 - 다른 사용자로 명령 실행(하지만 아래에 이 특정 질문을 묻는 프로필을 만들었기 때문에 아직 댓글을 달 수 없습니다.)

다음 질문을 하고 싶습니다. (Google에서 답변을 찾을 수 없기 때문입니다.)

다음과 같은 명령이 있습니다.
sudo su - usertwo -c 'mv /home/usertwo/file1.txt /home/usertwo/file2.txt'

위의 명령은 에 의해 실행됩니다 userone. 이 명령이 of
에도 표시되기를 원합니다 ..bash_historyusertwo

userone의 .bash_history 항목을 usertwo로 "전달"하는 방법이 있습니까?

미리 감사드립니다!

답변1

더 나은 명령은

sudo -Hu usertwo mv file1.txt file2.txt

하지만 이 경우나 귀하의 경우 모두 명령이 대화형으로 실행되므로 usertwo해당 사용자 계정으로 이동하지 않습니다 .bash_history.

그러나 기록 추적을 활성화하여 (끔찍한) 해결 방법을 만들 수 있습니다.

sudo -Hu usertwo bash -c '
    set -o history; HISTFILE="$HOME/.bash_history"; history -n
    mv file1.txt file2.txt
'

관련 정보