sys.argv를 사용하는 스크립트가 있고 입력에 특수 문자 (세미콜론)가 포함될 수 있습니다.sys argv의 Python 이스케이프 특수 문자
def myscript(text)
print text
a = myscript(sys.argv[1])
print a
를 내가 시도 :
>> python script.py "With these words she greeted Prince Vasili Kuragin, a man of high rank and importance, who was the first to arrive at her reception. Anna Pavlovna had had a cough for some days. She was, as she said, suffering" from la grippe; grippe being then a new word in St. Petersburg""
내가 얻을 :
'With these words she greeted Prince Vasili Kuragin, a man of high rank and importance, who was the first to arrive at her reception. Anna Pavlovna had had a cough for some days. She was, as she said, suffering'
None
bash: grippe: command not found
I를 내가 가진
.. 난 그냥 문자열로 입력이 필요하지만, 세미콜론은 모든 것을 망쳐 놨어요 그 안에 무엇이 들어 있는지에 관계없이 전체 문자열을 스크립트로 가져오고 싶습니다.
내가 시도 :
는 파이썬의 문제가 아니다a = myscript(repr(sys.argv[1]))
a = myscript(str(sys.argv[1]))
입력은 사용자가 입력하며 항상 다릅니다. 아니면 뭔가 이해가 안될까 ..? – Stpn
견적 안에 세미콜론은 괜찮습니다. 첫 번째 인용문이 arg를 닫고 세미콜론이 쉘로 하여금 명령을 실행하게 만든 것입니다. 어떻게 사용자 입력을 얻고 있습니까? –
잘 웹 사이트에서 보내지고 ... 나는 정규식을 통해 웹 측면에서 모든 것을 필터링 할 수있을 것 같아요하지만 할 간단한 방법이 있는지 궁금 해서요. – Stpn