2015-01-29 3 views
1

문자열과 첫 번째 공간 사이의 값을 grep하려고합니다.문자열과 첫 번째 공간 사이의 값을 grep하려고합니다.

speed:10 temp_min:-14 temp_max:10 
speed:5 temp_min:-12 temp_max:10 

내가

grep "temp_min" file 
-14 
-12 

어떤 도움이 많이 감사를 좀하고 싶습니다 :

내 파일은 라인 전을 포함합니다.

grep -oP 'temp_min:\K\S+' file 
-14 
-12 

또는 awk 사용 :

답변

1

grep -oP를 사용

awk -F 'temp_min:' '{split($2, a, " "); print a[1]}' file 
-14 
-12 

또는 나오지도`사용 :

sed 's/.*temp_min:\([^[:blank:]]*\) .*/\1/' file 
-14 
-12 
+0

내가지고있어 "그렙 : 지정된 충돌 매처 (matcher)를" – aachraf

+0

귀하의'grep'이 지원되지 않을 수 있습니다'-P', 내 AWK 또는 나오지 버전을보십시오. – anubhava

+1

감사합니다. grep 버전이 올바르게 작동합니다. "grep"을 "/ bin/grep"로 바꿉니다."sed"및 "awk"의 경우 결과에 파일의 다른 행이 표시됩니다. – aachraf

관련 문제