파일에서 특정 텍스트를 검색하고 행을 출력합니다 (Shell 스크립트)


12

변수 $ str1이 있다고 가정하십시오.

str1="20140121-21:48:26|Joanne Frances|"

내가하고 싶은 것은 파일에서 해당 부분을 검색하는 것입니다. 파일에는 다음이 포함됩니다.

20140121-21:48:26|Joanne Frances|Perez|9173046751.000000|Mar 31|
20140121-21:50:28|Nikko|Real|9065887272.000000|Mar 21|
20140121-22:22:53|Czarina|Revilla|9999999999.000000|Jan 21|

출력은 다음과 같아야합니다.

20140121-21 : 48 : 26 | Joanne Frances | Perez | 9173046751.000000 | 3 월 31 |

업데이트 : 마지막으로 도대체 문제가 무엇인지 알고 파일에서 실제로 의미가 없음을 echo $str1출력 20140121|Adrian Perez|합니다. 하아! 나는 엉망이야! -_-


grep을 사용하면됩니다. 예 :grep $str filename.txt
mcantsin

@mcantsin 나는 그것을 시도했지만 작동하지 않았다
joanne_

그리고 오류가 무엇입니까? -출력이 없습니까?
mcantsin

@mcantsin yup 출력이 없습니다!
joanne_

나는 당신의 모범을 테스트했고 그것은 나를 위해 완벽하게 작동합니다. -오타가 없나요?
mcantsin

답변:


12

이것을 사용하십시오 :

grep "$str" filename.txt

특수 문자의 잘못된 해석을 방지합니다.

자세한 내용은 다음을 참조하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.