XML 파일에 crlf 문자 추가

XML 파일에 crlf 문자 추가

UNIX 서버에서 생성된 텍스트 파일을 메인프레임 데이터 세트로 FTP로 보내려고 합니다. 이 파일은 큐에서 데이터를 추출하여 생성된 텍스트 파일입니다. 구성은 다음과 같이 XML 파일을 통해 수행됩니다.

</config> <exporters> <exporter id="REPORTING"> <number-of-exporter>1</number-of-exporter> <output-directory-name>/EXPORTER/OUT/</output-directory-name> <output-file-pattern>export_%.txt</output-file-pattern> <jndi-source-queue-name>queue.name</jndi-source-queue-name> <jndi-source-connection-factory>queue.name</jndi-source-connection-factory> <export-sleep-time>500</export-sleep-time>

위 코드에 CRLF 문자를 추가하는 방법을 알려주실 수 있나요?

답변1

각 닫는 태그 뒤에 LF를 추가하려면 다음을 사용할 수 있습니다 sed.

sed -e 's:</[^>]*>:&\n:g' inputfile.xml

LF(일명 "개행")뿐만 아니라 CR 또는 CRLF를 정말로 원한다면 \ror를 사용하세요.\r\n

표준 출력으로 출력하는 것이 아니라 실제 입력 파일을 변경하기 위해 sed's -i또는 옵션을 사용하는 옵션이 있습니다 .--in-place

sed -i -e 's:</[^>]*>:&\n:g' inputfile.xml

참고: 현재 아무도 사용하지 않는 오래된 버전은 -i사용할 수 없습니다. sed대신 tmp 파일을 사용하세요.

답변2

unix2dos <file>문서

char 방법은 UX(LF) 또는 Windows(CRLF), Mac(CR)에서도 구성을 읽을 때 매우 까다롭습니다.

dos2unixCRLF > LF로 변환

unix2dosLF > CRLF로 변환

Notepad++를 사용하면 해당 항목을 검색하고 바꿀 수 있습니다.

  • \n= 저주파
  • \r=CR
  • \r\n= 캐리지 리턴 및 줄 바꿈

관련 정보