grep에서 검색된 문자열만 출력 하는 방법이 있을까요?
grep에서 검색된 문자열만 출력 하는 방법이 있을까요?
이기종 DB간 데이터 이식 툴을 만들고 있습니다.
그런데 시간을 넣어주는 부분에서 막히네요 ㅠㅠ
예를 들어서 다음의 DB row 에서 Time값만 추출 하고 싶은데,
---------------------------------------------------------------------------------------
512,1,"502152020000255",0,"error text",100,0,"192.168.10.51","192.168.10.51","testDB1",NULL,2015-05-29 03:31:55.000000,1432837915
---------------------------------------------------------------------------------------
echo xxxx | grep '[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9] [0-9][0-9]:[0-9][0-9]:[0-9][0-9].000000'
이렇게 찾을수는 있지만, 해당 라인이 출력 됩니다.
앞뒤를 자르고 정확하게 정규식과 일치하는 '2015-05-29 03:31:55.000000' 값을 얻고싶으면 어떻게 하여야 할까요? ㅠㅠ
---------------------------------------------------------------------------------------
input > echo "512,1,"502152020000255",0,"error text",100,0,"192.168.10.51","192.168.10.51","testDB1",NULL,2015-05-29 03:31:55.000000,1432837915"
---------------------------------------------------------------------------------------
output > 2015-05-29 03:31:55.000000,1432837915
---------------------------------------------------------------------------------------
man grep
-o, --only-matching
Print only the matched (non-empty) parts of a matching line, with each such part on a separate output line.
댓글 달기