Bash CGI 스크립트에서 GET 매개 변수로 전달 된 명령을 실행합니다. 다음과 같을 수 있습니다.Bash CGI의 동일한 변수에서 두 개의 명령 실행
CMD='ls -al'
$CMD
잘 작동하고 예상되는 출력을 생성합니다. 내가
CMD='ls -al; echo hello'
$CMD
또는
CMD='ls -al && echo hello'
$CMD
도 명령이 명령을 전달하려고하지만 실행됩니다.
bash CGI에서 같은 줄/변수에서 여러 명령을 어떻게 실행합니까?
[명령을 변수에 넣지 마십시오] (http://mywiki.wooledge.org/BashFAQ/050). 그것은 당신의 명령이 더욱 복잡 해짐에 따라 매우 빨리 멈추게 될 것입니다. 당신이 방금 예를 들어 본 것처럼. –
@EtanReisner 그런 다음 내 시나리오에 대해 제안 하시겠습니까? 나는 GET 변수로부터 명령을 받고, URL 인코딩을 깨끗이하고, 실행해야한다. – Juicy
'GET' 매개 변수로 전달 된 임의의 명령을 실행하는 원격 셸을 만들어야합니까? 그것은 당신이 입력을 위생적으로 만들려고 노력했다 할지라도 안전하지 못합니다. –