
쉘 스크립트를 바이너리 파일로 변환하는 것이 가능하다는 것을 알고 있지만 shc
이를 해독할 수 있는 명확하고 잘 알려진 도구가 있습니다. 그래서 저는 이 일을 할 수 있는 다른 방법을 찾고 싶습니다.
쉘 스크립트를 실행 가능한 바이너리로 변환할 수도 있다고 들었는데 make
제가 찾은 모든 사이트는 Linux에서 쉘 스크립트를 실행 가능한 바이너리로 변환하는 shc
방법을 아는 사람이 있습니까 ?make
답변1
논리적으로 쉘 스크립트는 런타임에 새로운 쉘 구문을 다양한 방법으로 주입할 수 있기 때문에 바이너리로 컴파일될 수 없습니다. 예를 들어 변수 리터럴에서 새 명령을 생성한 exec
다음 source
컴파일하지 않고 해당 명령을 실행합니다. 수정되었습니다).
shc는 바이너리를 생성하지만 아무것도 컴파일하지 않습니다. 임의의 키로 쉘 텍스트 파일을 인코딩하고 이를 파일에 삽입합니다. 실행 파일이 실행되면 텍스트를 디코딩하여 원하는 셸로 파이프합니다.
답변2
아무도 이것을 모릅니다. 불가능한.
make
빌드 자동화 도구입니다. 소프트웨어 구축 프로세스를 자동화하지만 소프트웨어의 실제 구축은 여전히 컴파일러 및 기타 구축 도구에 의해 수행됩니다. 따라서 원하는 작업을 수행하는 도구(예 shc
: ) 를 찾으면그 다음에당신은 할 수오토메이션소프트웨어, 코드 또는 쉘 스크립트를 자체적으로 컴파일하지 않습니다 make
. make
단지 쉘 스크립트와 같은 다른 명령을 호출할 뿐입니다.