cygwin을 사용하여 Windows 컴퓨터에서 Linux 스크립트를 실행하려고 합니다.
나는 이미 다음의 솔루션을 읽고 시도했습니다.Cygwin에는 'sudo' 명령이 없습니다., 성공하지 못했습니다.
일반 Linux 환경에서 sudo를 사용하는 스크립트가 있습니다. 하지만 cygwin에서 scirpt를 실행하면 다음 오류 메시지가 표시됩니다.
project_common.sh: line 604: sudo: command not found
나는 cygwin에 sudo가 없다는 것을 알고 있으며 앞서 언급한 참조 질문에서는 다음을 사용한다고 말했습니다.
>#!/usr/bin/bash
>"$@"
스크립트를 실행하기 전에 해당 명령을 실행해 보았습니다. 또한 명령을 스크립트에 포함시킵니다. 어느 쪽도 도움이 되지 않습니다. 그래서 내가 무엇을 놓치고 있는지 잘 모르겠습니다.
답변1
sudo
파일에서 '를 모두 제거 하고 관리자 권한으로 스크립트를 실행하세요.
즉, Linux의 개념 root
과 Windows의 Administrator 개념은 정확히 일치하지 않습니다. 특히 Windows Vista/7에서는 수동으로 수정하거나 스크립트를 추가로 수정해야 하는 권한 문제가 여전히 있을 수 있습니다.
그건 그렇고, 참조된 질문은 당신이 넣어주길 바랐습니다
>#!/usr/bin/bash
>"$@"
이라는 파일에서 sudo
으로 실행 권한을 부여한 chmod
다음 $PATH
와 같은 /sbin
. 결과 파일은 명령으로 제공한 매개변수를 실행하는 것 외에는 아무 작업도 수행하지 않습니다. 아이디어는 아무것도 하지 않는 "가짜" sudo를 만드는 것이었습니다. sudo
파일에서 '를 삭제할 수도 있습니다 .
답변2
이 시도:
#!/usr/bin/env bash
cygstart --action=runas "$@"
sudo와 유사하게 작동하지만 단점은 UAC 대화 상자를 수동으로 확인해야 한다는 것입니다. 이 스크립트는 내 일부입니다.도트 레포.