저는 HTML을 처음 사용하기 때문에 아래 스크립트를 호출하여 웹 브라우저에서 간단한 Linux 날짜 명령을 인쇄 할 수있었습니다. 그러나 웹 브라우저에서 변수 v
의 내용을 표시하려고하는데 할 수 없습니다. 내가 도대체 뭘 잘못하고있는 겁니까? 배치 파일은 명령 줄에서 실행할 때 잘 작동합니다. 즉, 오류가 없었습니다.HTTP에서 호출하는 BASH Linux 스크립트 실행
#!/bin/bash
echo "Content-type: text/html"
echo ""
echo "<html>"
echo "<head>"
echo "Today is $(date)"
v=`ssh -t -q jcrm16 ". ~/.profile;/opt/reuters/scripts/matt/adsuserlist"`
printf "$v"
# echo $(printf "$v") << tried this did not work
echo "</body>"
echo "</html>"
이렇게 bash를 사용하는 것은 매우 나쁜 생각입니다. 사람들은 환경 변수 (IFS!)를 전달할 수 있습니다. 모든 종류의 불쾌한 것들 .. 너무 귀찮습니다. bash를 CGI 언어로 사용하는 것은 나쁜 습관입니다. – synthesizerpatel
나는 귀하의 질문이 실제적인 목적보다 학문적이라고 가정합니다. 밖에있는 많은 언어들이 동적 HTML을 생성하는 데 훨씬 더 적합합니다 (@synthesizerpatel이 지적한 것과 동일한 보안 문제에 대해 심사 받았습니다). 그러나 적어도 출력중인 마크 업에 어떤 문제가 있는지 알려주는 포인터를 제공했습니다. –
Jason에게 감사드립니다. perl 및 CGI 형식을 사용할 계획입니다. 지금은이 간단한 디스플레이 만 할 필요가 있습니다. – matthewthegreat