2017-12-13 5 views
3

특히, XML 파일에 대한 주류를 작성하는 방법이 있습니까?XML 파일의 첫 번째 문자는 무엇이어야합니까?

시작 정보가 포함 된 XML 파일을 사용하고 있습니다. (문제가있는 경우 Roslaunch 파일). 파일을 직접 호출하고 bash를 실행시키고 싶습니다. 그러나 XML의 경우 #!으로 시작하는 것은 구문 오류입니다. Shebang과 함께 XML 파일을 작성하는 방법이 있습니까?

+0

당신의'XML' 출시가 bash 스크립트로 시작하는 것에 대해 이야기하고 있습니까? IE' /path/to/your/script.sh ' – Zak

+0

이 경우 roslaunch입니다. 현재'roslaunch file.launch'를 실행합니다. 여기서 file.launch는 XML 파일입니다. – BillThePlatypus

답변

5

< 또는 공백이어야합니다 XML 파일의 첫 번째 문자. 올바른 형식의 XML 문서는 #을 비롯한 다른 문자로 시작될 수 없습니다. Well-Formed XML Documents에 대한 Extensible Markup Language (XML) 1.0 (Fifth Edition) XML의 EBNF 당

다음 document 생산 및 그 구성 부품, XML 문서가로 시작해야합니다에서 알 수있는 바와 같이

[1] document ::= prolog element Misc* 
[22] prolog ::= XMLDecl? Misc* (doctypedecl Misc*)? 
[23] XMLDecl ::= '<?xml' VersionInfo EncodingDecl? SDDecl? S? '?>' 
[27] Misc  ::= Comment | PI | S 
[3] S  ::= (#x20 | #x9 | #xD | #xA)+ 
[16] PI  ::= '<?' PITarget (S (Char* - (Char* '?>' Char*)))? '?>' 
[15] Comment ::= '<!--' ((Char - '-') | ('-' (Char - '-')))* '-->' 
[28] doctypedecl ::= '<!DOCTYPE' S Name (S ExternalID)? S? 
        ('[' intSubset ']' S?)? '>' 
[39] element ::= EmptyElemTag | STag content ETag 
[44] EmptyElemTag ::= '<' Name (S Attribute)* S? '/>' 
[40] STag  ::= '<' Name (S Attribute)* S? '>' 

중 하나

  • < (XMLDecl을 통해, Comment, PI,,153,210 또는 element)은 또는
  • 공백 문자()에는 XMLDecl 없다 구비.
+0

Dang. 나는 shebang 또는 무언가를하는 다른 방법이 있기를 바라고 있었다. – BillThePlatypus

+0

죄송합니다. XML을 읽거나 포함하는 래퍼 작성과 같은 다른 솔루션을 찾아야 할 것입니다. 올바른 형식의 XML 파일을'#! '로 시작하는 방법은 없습니다. 다행히도 이것은 적어도 당신에게 불가능한 접근법을 조사 할 시간을 아끼지 않을 것입니다. – kjhughes

+0

그것을지나 가기 전에 세 방이 부드럽게 움직이는 프로그램을 호출하는 세 방이있는 방법이 있습니까? – BillThePlatypus

관련 문제