%5Cn%EC%9D%84%20%EA%B5%AC%EB%B6%84%20%EA%B8%B0%ED%98%B8%EB%A1%9C%20%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
아래 데이터가 포함된 파일이 있습니다.
7[label = "ScanStep: T_b0\n(T.a = 1)\na\nb\nc\nd\ne\ndob\ntimestamp1\nUnc: Integer(8)\nUnc: Integer(8)\nUnc: Varchar(80)\nUnc: Numeric(10,2)\nUnc: Varbinary(80)\nUnc: Date(8)\nUnc: Timestamp(8)", color = "brown", shape = "box"];
7[label = "ScanStep: cde_b1\nBuddies: (cde_b1, cde_b0, cde_b2)\n(public.cde.newcol = \'013\')\nssn\nnewcol\nmasked_ssn\nUnc: Numeric(10,2)\nUnc: Varbinary(80)\nUnc: Date(8)\nUnc: Timestamp(8)", color = "brown", shape = "box"];
그러한 항목이 여러 개 있습니다.
"\n(" 뒤와 ")\n" 앞에 오는 항목만 인쇄해야 합니다.
awk로 시도했지만 구분 기호를 제공할 수 없습니다.
awk -F "\\n\\\\(" '{print $1}' unset
파일의 전체 줄을 인쇄합니다.
awk -F "\\n\\(" '{print $1}' unset
awk: warning: escape 시퀀스
\(' treated as plain
(' awk: fatal: Unmatched ( 또는 (: / (/
답변1
다음과 같이 이를 수행할 수 있습니다 sed
.
sed -e 's,\\n(.*,,' unset
아니면 awk
당신과 함께 많은 탈출을해야합니다
awk -F'\\\\n\\(' '{print $1}' unset
\
이전 n
과 이전의 특별한 해석으로부터 보호하기 위해 올바른 탈출을 얻으려면(
답변2
\n( 및 이전)이라는 목표를 달성하기 위해 grep과 sed의 조합을 사용했습니다.\n
grep -o '\\n(.*)\\n' test.txt|sed -e 's/\\n//g'
샘플 출력
(T.a = 1)
(public.cde.newcol = \'013\')