사용자가 제어하는 URL의 일부로 서버 응용 프로그램에서 wget
을 호출해야합니다. 내가 서버 응용 프로그램에 setenv()
을 사용하여 환경 변수 URL
에 인수를 저장하는 경우에, 나는 $URL
어떤 방식으로 확장되지하고의 일부로서 전적으로 해석되어 있다고 가정 할 수 있습니다환경 변수를 통한 인수 전달은 완전히 안전합니까?
wget somehost/"$URL"
갈래 쉘에서 실행 URL? Bourne 쉘과 호환 가능합니까 (예 : Ubuntu에서 이 아니라 bash
)?
서버 응용 프로그램에서 wget을 어떻게 실행합니까? 'system()'사용하기? – Jens
큰 따옴표 붙은 변수는 POSIX 호환 쉘에서 확장하거나 해석해서는 안됩니다. – PSkocik
예상되는 문제 : 1. 스폰 된 쉘이'.bashrc '를 제공하면 존재하는 경우 거기에'URL'을 가져옵니다. 2. 'URL'이 다른 여러 프로세스를 생성하면 그 중 일부 프로세스가 잘못된 'URL'을 가져올 수 있습니다. – alvits