DATA 전문가로 가는 길

[Unix/Linux] awk, perl 문자열 뽑을때 작은 따음표(single guote) 사용 방법 본문

OS/Fundamental

[Unix/Linux] awk, perl 문자열 뽑을때 작은 따음표(single guote) 사용 방법

EstenPark 2011. 2. 20. 15:08

작성자 : 박상수
작성일자 : 2011.02.19
작업환경 : VMware7 [ RHEL4, Oracle Database 10g r2 patchset 4 ]


1. Single Quote 사용 방법

[1-1 개념] 보통 문자열을 출력 하기 위해서 print, printf를 사용 합니다. 하지만 특수문자는 명령어로 인식 하기 때문에 와일드 카드[ \ ]를 사용해야 문자로 인식 하는데 그중에 [ ' ] 작은 따음표는 유독히 와일드 카드를 사용해도 명령어로 인식 하는 듯 싶습니다. 그래서 아래와 같이 사용하면 문자열로 인식 시켜서 사용 할 수 있습니다.

주로 많이 사용하는 SQL 문이나 특정 문자열을 작은 따음표로 묶어 줘야 할때 아래와 같이 사용하면 편리 합니다.

[예제 1] awk '{printf("Here is a single \'\''quote\'\'' example.\n")}' 
[예제 2] ls -al |awk '{print("asdfasdfasdf aaaa\'\'' \n")}'

[예제 3] update 문으로 이용 가능 합니다.
[2011-02-20 14:55:36]-[oracle@estenpark:~/arch_data/arch1]
$ ls -al |grep arc |awk -F' ' '{printf("update table set name= \'\''%s\'\'' where dept_no=1243; \n", $9)}'

update table set name= '100_1_742770060.arc' where dept_no=1243;
update table set name= '101_1_742770060.arc' where dept_no=1243;
update table set name= '102_1_742770060.arc' where dept_no=1243;
update table set name= '103_1_742770060.arc' where dept_no=1243;



Comments