![다른 문자열과 함께 큰따옴표로 묶인 하이픈을 인쇄하는 방법](https://linux55.com/image/156437/%EB%8B%A4%EB%A5%B8%20%EB%AC%B8%EC%9E%90%EC%97%B4%EA%B3%BC%20%ED%95%A8%EA%BB%98%20%ED%81%B0%EB%94%B0%EC%98%B4%ED%91%9C%EB%A1%9C%20%EB%AC%B6%EC%9D%B8%20%ED%95%98%EC%9D%B4%ED%94%88%EC%9D%84%20%EC%9D%B8%EC%87%84%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
cat inv_summary_1.txt | while read -r aLine
do
F1=`echo "$aLine" | cut -d "," -f1`
F2=`echo "$aLine" | cut -d "," -f2`
echo " 0 RUN_ID STR [0] \"${F2}\" "
done
191245204696,REG-00000000001
위의 구분 기호 ""가 있는 inv_summary_1.txt 파일이 있고 사전 정의된 값과 함께 두 번째 필드를 인쇄하려고 합니다.
0 RUN_ID STR [0]
191245204696,REG-00000000001
나 나가고 싶어
0 RUN_ID STR[0]"REG-00000000001"
하지만 내가 얻는 것은
” RUN_ID STR [0] “REG-00000000001
큰따옴표가 올바르지 않습니다. echo 문의 처음 2문자도 손실됩니다.
도와주세요. "-"는 Unix 쉘 스크립트에서 어떤 의미를 갖고 있다고 생각합니다. 도와주세요.
참고: 저는 Linux 4.1.12-94.3.9.el7uek.x86_64 #2 SMP Fri Jul 14 20:09:40 PDT 2017 x86_64 x86_64 x86_64 GNU/Linux를 사용하고 있습니다.
답변1
텍스트를 구문 분석하려면 셸 대신 전용 도구를 사용하는 것이 좋습니다 awk
.
awk -F, '{print "0 RUN_ID STR [0] \""$2"\""}' < input
결과는 다음과 같습니다.
0 RUN_ID STR [0] "REG-00000000001"