포트폴리오
← 모든 글

실리콘밸리 엔지니어와 함께하는 리눅스(3)

리눅스 기초 정리 (3)

1. Pipes (|)

  • 파이프 문자(|)를 사용하는 기능
  • 두 개의 프로그램, 프로세스, 명령어를 연결해 주며, 앞 명령어의 출력(output)이 뒤 명령어의 입력(input)으로 전달됨
ls -l | grep ".txt"        # ls 결과 중 .txt가 포함된 줄만 출력
cat file.txt | wc -l       # 파일의 줄 수 출력

파이프 사용의 장점

2. grep (Global Regular Expression Print)

  • 텍스트 검색에 유용한 명령어
  • 파일 또는 스트림에서 특정 패턴을 찾아 출력

명령어 옵션

grep -i "error" app.log
grep -rn "TODO" /project

3. wc (word count)

  • 하나 이상의 파일에 대해 줄 수, 단어 수, 문자(바이트) 수 정보를 제공

주요 옵션

4. sed (Stream Editor)

  • 문자열을 수정할 때 사용
  • 파일의 문자열을 변경할 수 있으며, 기본적으로는 변경 결과를 화면에 보여주는 용도 (원본은 i 옵션을 줘야 수정됨)

주요 기능

예시

5. awk

  • 테이블 형식 또는 컬럼이 있는 데이터를 가공해 출력하는 도구
  • 프로그래밍 언어적인 특성이 있음
awk '{print $1, $3}' file.txt     # 1번째, 3번째 컬럼 출력

TIL 느낀점

  • Pipe는 여러번 본 것 같은데 어렵단 생각을 했지만, LangChain도 그렇고 다 비슷한 의미로 사용되어지는 듯하다. 익숙하지 않아서 그런 듯하고, 익숙하면 괜찮을 것 같다!
  • grep 역시 찾는 용도로 많이 이용한 것 같아서 수시로 해보도록 해야 할 듯하다.
  • awk가 프로그래밍 같은 부분이라 생각보다 재밌었던 것 같다 ㅎ