2009-06-05 2 views
4

텍스트 파일을 생성하는 tcsh 스크립트가 있습니다. 텍스트 파일의 라인 중 하나는 :tcsh에 중첩 된 따옴표를 붙입니다.

bla bla bla 'foo foo foo "bar bar bar"': etc etc; 

참고도 있어야 :; 중첩 '"하고 있습니다.

:;은 전체 문자열을 따옴표로 묶어야합니다. 그러나 그렇게하면 따옴표를 벗어나는 데 어려움이 있습니다.

명령은 다음과 같습니다

echo "bla bla bla 'foo foo foo "bar bar bar"': etc etc;" >> outfile 

어떻게 제대로 인쇄되는 그래서 bar bar bar 주위에 따옴표를 탈출 할 수 있습니까?

답변

8
echo "bla bla bla 'foo foo foo "\""bar bar bar"\""': etc etc;" 

나이 :

echo "bla bla bla 'foo foo foo "\"bar bar bar\""': etc etc;" 

이 당신이 준 간단한 예를 들어 작동해야하지만 실제로 항상 나를 짜증 tcsh가 인용 ... 뭘 하려는지에 대한 도움이되지 않을 수 있습니다, 특히 back-ticks, quotes 및 double-qutes를 혼합하여 별칭을 정의하려는 경우 더욱 그렇습니다.

두 번째 형태는 에코 작동 경고 수 있지만 실제로 (이스케이프 시퀀스를 해석 후) 수있는 명령 줄에서 세 개의 인수를 작성

  • 즐 즐 즐 'foo는 foo는 foo는 " 막대
  • 막대
  • bar ": 등;

첫 번째 양식은 사용해야하는 양식입니다.