printf % q 문자열을 인용해야합니다. 그러나 스크립트로 실행되면 공간을 삭제합니다.
이 명령
printf %q "hello world"
출력 : 올바른
hello\ world
.
이 스크립트 :
#!/bin/bash
str="hello world"
printf %q $str
출력 : 잘못
helloworld
.
실제로 이러한 동작이 예상되는 경우 호출 된 프로그램에서 원본으로 다시 변환 할 수있는 방식으로 문자가 포함 된 문자열을 인용 할 수있는 대체 스크립트가 있습니까?
감사합니다.
소프트웨어 : GNU bash는 버전 4.1.5 (1) -release (을 i486-PC-리눅스 GNU)
편집 : 해결, 감사합니다.
합니까 쉘 특수 문자를 포함 할 수있다 임의의 입력을 수락 만족하여 게시하다. StackOverflow.com에서는 제목에 'SOLVED'라는 접두어를 붙여서 문제를 표시하지 않습니다. 답변을 수락하거나 자신의 답변을 게시하고 작동 한 답변 근처의 투표 버튼 아래에있는 체크 표시를 클릭하여 동의하십시오 너를 위해서. –