문자열
Posts
24 posts[bash: grep] 두개의 파일에서 공통으로 출현하는 문자열 찾기
파일 2개를 비교해서 양쪽 파일에 공통적으로 출현하는 문자열을 찾는 방법이다. grep의 -f 옵션을 사용하면 된다. -f 옵션은 검색할 문자열을 파일로부터 한줄씩 읽어들이기 위한 것이다. 예를 들어 a.txt 파일에 있는 문자열 중에 b.txt에도 있는지 알고 싶다면, 아래와 같이 해 볼 수 있다. # a.txt 파일로부터 문자열 패턴을 읽어서 b.txt에서 검색 (-f 옵션) grep -f a.txt b.txt 한가지 생각해 볼 점은, a.txt와 b.txt에 빈 줄이 많이 존재할 경우 이것도 전부 문자열로 간주해서 비교하기 때문에 빈 줄도 일치하는 것으로 결과가 나와서 보기에 지저분할 수 있다. 위의 예시를 좀 더 깔끔하게 작업하려면 a.txt 파일에서 빈 줄을 제거하고 중복되는 문자
[bash: awk] 작업 시작전, 완료후에 실행할 명령어 지정(BEGIN/END)
awk에서 텍스트 파일에 대한 작업을 시작하기 전, 또는 모든 작업이 끝난 후에 실행할 명령어를 지정해 줄 수 있다. 시작전을 나타내는 구문은 BEGIN, 끝난 후는 END로 지정한다. 아래의 예시를 보자. awk 'BEGIN { print "작업을 시작합니다." } ... END { print "작업을 완료했습니다." }' my_file.txt 굳이 이러한 구문이 필요할까 싶을 수도 있겠지만 의외로 요긴하다. 특정 디렉토리에서 특정 파일의 용량 합계를 awk를 이용해서 계산하는 방법을 다룬 이전 게시물을 보면 END 구문이 마지막 결과 출력에 활용되고 있음을 볼 수 있다. awk 활용에 대한 다른 게시물들은 여기로
[bash: awk] 조건에 따른 문자열 작업
awk 구문의 가장 기본적인 형태는 아래와 같다. awk '/패턴/ {명령어}' 파일명 텍스트 파일을 한 행씩 읽으면서 일치하는 패턴(문자열)이 보이면 이에 상응하는 명령어를 실행한다. 예를 들어 my_file.txt 파일에서 "abc" 문자열이 있으면 행 전체($0)를 출력하고 "def" 문자열이 있으면 "___" 문자열을 출력한다면 아래와 같이 될 것이다. awk '/abc/ { print $0 } /def/ { print "___" }' my_file.txt 위의 예시에서 만약 한 행에 "abc"와 "def"가 둘 다 있다면 행 전체도 출력되고 "___" 문자열도 출력된다. if/else 조건문을 사용해서 조건에 따라 출력을 지정해 줄 수 있다. 예를 들어 my
[bash: sed] sed에서 영역 구분을 이용한 문자열 재구성 작업 (역슬래시-괄호)
sed에서 역슬래시-괄호를 이용하면 문자열에서의 영역을 구분할 수 있는데, 이를 이용해서 단순 문자열 대체를 넘어서 좀 더 복잡한 작업을 할 수 있다. 몇가지 예시를 보면 금방 감을 잡을 수 있을 것이다. sed를 이용한 기본적인 문자열 대체 등 일반적인 내용은 이전 게시물들을 참고하자. 가장 기본적인 내용에 대한 설명은 여기로, 반달가면 블로그의 sed 관련 게시물 목록은 여기로 우선 dialog.txt 파일의 내용이 아래와 같다고 가정해 보자. cat dialog.txt John said, "Hi, Jane." Jane replied, "Hello, John." John said, "It's nice to see you." 위의 파일에 담긴 내용을 아래와 같이 바꾸고 싶다면 어떻게
![[웹툰단행본] 『통제구역관리부』 1권 후기 : 이상한 변칙과 기이한 일들이 일어나는 공간에 대하여](https://img.zoomtrend.com/2026/06/09/1780996474-SE-5eda86fa-0d63-4afd-b8dd-b801879fed52.jpg)


![[CV] [Comi] 'あかね噺'(아카네 이야기) 22권. 아카네의 첫 전력 승부](https://img.zoomtrend.com/2026/06/08/1780982081-EC9D8CEC9585EC9D98EBA6ACEB93ACEC9CBCEBA19C.jpg)