본문 바로가기

Programming/Linux

[Linux] 리눅스 다중 명령어 - 세미콜론(;), 파이프라인(|), 더블 엔드퍼센트(&&) [요약 ver]

세미콜론( ; )

  • 세미콜론( ; ) 
    • 명령문의 끝을 나타냄
    • 하나의 명령문 라인에서 여러 개의 명령 실행
    • 만약 첫 번째 명령문이 실패해도 두 번째 명령문은 실행됨
  • 한 줄 입력 예시

    cp .profile new; cat new; head -3 new; ls -a

    - .profile 파일을 new 파일에 복사해라.
    - 그 다음 new 파일을 출력하라.
    - new 파일을 출력하는데, 앞 세 줄만 출력하라.
    - 파일 목록을 출력하라.

파이프(Pipe)

  • IPC(InterProcess Communication) 기법 중 하나
    • IPC 기법 중 커널 영역을 활용한 기법
  • 리눅스에서의 파이프는 두 개의 프로세스를 연결하는 연결 통로를 의미함
  • 프로세스 통신을 위해 도입된 것
  • 특정 프로세스 표준 출력이 다른 프로세스의 표준 입력으로 쓰이는 것을 말함
  • 여러 개를 사용하면 파이프라인(Pipe-Line)을 구성하며 데이터들은 파이프라인을 따라 흐르게 됨
    • 이게 무슨 말이냐. 
      앞 실행 명령어의 출력 결과 = 뒤 실행 명령어의 입력 값
    • 이때, 앞 결과를 뒤 입력으로 보내며 파이프( | )를 사용하면 여러 명령을 동시에 연결해 사용할 수 있음
  • 셀 프롬포트에서 한 번에 사용 가능한 파이프 개수의 제한은 없음
  • 예시.  cat .bashrc | more

더블 엔드퍼센트(&&)

  • 쉽게 생각해 자바의 앞 조건이 true여야 하는 and 생각
  • 다중 명령 실행을 위한 것
  • 세미 콜론과의 차이는, 첫 명령문이 정상 종료될 경우에만 두 번째 명령문 수행

더블 버티컬바( | | )

  • 쉽게 생각해 자바의 앞 조건이 false여도 무방한 or 생각
  • 첫 번째 명령문이 에러가 발생할 경우 뒤 명령문 실행

'Programming > Linux' 카테고리의 다른 글

grep 사용 명령어  (0) 2021.07.23
cat 명령어 모음  (0) 2021.07.23
[Linux] 리눅스 명령어  (0) 2021.07.05
[Linux] vi, vim  (0) 2021.07.05
리눅스 (1) 리눅스 파일 시스템  (0) 2021.07.02