문제

아마도 예를 들어 설명하기가 가장 쉬운 것일 것입니다.

$ echo '\&|'
\&|
$ echo '\&|' | while read in; do echo "$in"; done
&|

"읽기"명령은 입력의 슬래시를 탈출하여 제거하고 제거하는 것 같습니다. 내용을 변경하지 않고도 라인별로 파일을 처리해야하며 여기에서 똑똑하지 않도록 읽는 방법을 잘 모르겠습니다. 어떤 아이디어?

도움이 되었습니까?

해결책

다음과 같은 계산 : http://www.vias.org/linux-knowhow/bbg_sect_08_02_01.html :

-아르 자형
이 옵션이 제공되면 백 슬래시는 탈출 문자로 작동하지 않습니다. 백 슬래시는 라인의 일부로 간주됩니다. 특히, 백 슬래시-뉴 라인 쌍은 라인 연속으로 사용되지 않을 수 있습니다.

내 컴퓨터에서 작동합니다.

$ echo '\&|' | while read -r in; do echo "$in"; done
\&|

다른 팁

사용 read -r,에 따라 http://www.ss64.com/bash/read.html:

-아르 자형
이 옵션이 제공되면 백 슬래시는 탈출 문자로 작동하지 않습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top