본문 바로가기
linux

[linux] 5. 프로세스와 리디렉션

by 프링글's 2023. 4. 19.

!!혼자 시험공부한 내용을 올리는 거라 중구난방에 틀린 내용이 많을 수 있습니다!!

Commanding

  • 명령어 열
    • 나열된 명령어들을 순차적으로 실행
    • 명령어1; 명령어2; … ;명령어 n
  • 명령어 그룹
    • 나열된 명령어들을 하나의 그룹으로 묶어 순차적으로 실행함
    • (명령어1; 명령어2; … ; 명령어 n)
  • 조건 명령어 열
    • 첫 번째 명령어 실행 결과에 따라 다음 명령어 실행을 결정할 수 있음
    • 명령어1 && 명령어2
      • 명령어1이 성공적으로 실행되면 명령어2가 실행. 명령어1이 실패하면 명령어2가 실행되지 않음
    • 명령어1 || 명령어2
      • 명령어1이 실패하면 명령어2가 실행되고, 명령어1이 성공하면 실행되지 않음
  • 파일 이름 대치
    • 대표문자를 이용한 파일 이름 대치  
      * 빈스트링을 포함한 임의의 스트링
      ? 임의의 한 문자를 나타냄
      [..] 대괄호 사이의 문자중 하나. 부분범위 가능
  • 명령어 대치
    • 명령어를 실행할 때 다른 명령어의 실행 결과를 이용하는 것
    • 명령어 부분은 실행 결과로 대치됨(역따옴표 사용)

Process

  • 실행중인 프로그램을 프로세스라고 함
  • 각 프로세스는 유일한 프로세스 번호 PID를 가짐
  • 각 프로세스는 부모 프로세스에 의해 생성된다
  • 프로세스는 프로세스 ID외에 프로세스의 사용자 ID와 그룹 ID를 갖는다
    • 프로세스를 실행시킨 사용자ID와 사용자 그룹 ID를 가짐
    • 해당 사용자 및 그룹의 권한을 상속받아 프로세스가 수행할 수 있는 연산을 결정하는데 사용됨
    • id [사용자명]
      • 사용자의 실제 ID와 유효 사용자 ID, 그룹 ID 등을 보여줌
  • 프로세스의 실제 사용자 ID
    • 그 프로세스를 실행한 사용자의 ID
  • 프로세스의 유효 사용자 ID
    • 현재 유효한 사용자 ID
    • 보통은 실제 사용자 ID와 같음
    • 새로 파일을 만들 때나 파일의 접근 권한을 검사할 때 주로 사용됨
  • set-user-id 실행파일
    • set-user-id 실행권한
      • s-u-i가 설정된 실행파일을 생행하면 이 프로세스의 유효 사용자 ID가 그 실행파일의 소유자로 바뀜
      • 실행되는동안 그 파일의 소유자 권한을 갖게 됨
      • 이해는 잘안됨…
    • set-group-id 실행권한
      • 실행되는 동안 그 파일 소유자의 그룹을 프로세스의 유효 그룹 ID로 갖게 됨
  • ps :프로세스 상태 보기
    • 자세한 옵션들은 ppt 5장 19쪽
  • 특정 프로세스만 리스트
    • pgrep [옵션] [패턴]
      • -l: PID와 함께 프로세스의 이름을 출력함
      • -f: 명령어의 경로도 출력함
      • -n: 패턴과 일치하는 프로세스들 중에서 가장 최근 프로세스만을 축력함
      • -x: 패턴과 정확하게 일치되는 프로세스만 출력
    • ptree : 실행중인 프로세스들의 부모, 자식 관계를 트리 형태로 출력함

Process: Control

  • 쉘에서 수행된 프로세스 쉘 프로세스의 자식 프로세스
  • echo : 메시지를 화면에 출력함
  • sleep: 명시된 시간만큼 프로세스 실행을 중지시킴

강제종료

  • ctrl + c : 강제종료
  • ctrl + z : 실행 중단
  • 전면 처리
    • 입력된 명령어를 전면에서 실행
    • 쉘은 명령어 실행이 끝날때 까지 기다림
  • 후면 처리
    • 명령어를 후면에서 실행하고 전면에서는 다른 작업 실행 → 동시에 여러 작업 수행 가능
    • 뒤에 ‘&'를 붙여서 실행
    • 예) $ (echo Start; sleep 5; echo End) & → 후면작업의 Job 번호와 PID가 출력됨
  • 후면 작업 확인
    • jobs [%작업번호]
  • 후면 작업을 전면으로 전환
    • fg %작업번호
    • 작업번호에 해당하는 후면작업을 전면작업으로 전환시킨다.
    • bg %작업번호 : 전면 → 후면
  • 프로세스 강제 종료
    • kill 프로세스 번호
    • kill %작업번호
  • 프로세스 기다리기
    • wait [프로세스 번호]
    • 프로세스 번호로 지정한 프로세스가 종료될 때까지 기다림
    • 지정하지 않으면 모든 자식 프로세스가 종료될 때까지 기다림

Redirection

  • 출력 재지정
    • 명령어 > 파일
      • 명령어의 표준 출력을 모니터 대신 파일에 저장함
      • 파일이 없으면 새로 만들고 있다면 내용을 덮어씀
    • cat > 파일
      • 표준 입력 내용을 모두 파일에 저장함
    • cat file1 file2 > file3
      • file1과 file2의 내용을 합쳐서 file3을 만들어줌
    • 명령어 >> 파일
      • 명령어의 표준 출력을 파일에 추가함
      • 덮어쓰는거 아니고 추가(append)함
    • 명령어 < 파일
      • 명령어의 표준 입력을 키보드 대신 파일에서 받음
    • 명령어 << 단어
      • 명령어의 표준 입력을 단어와 단어 사이의 입력 내용으로 받음
  • 오류 재지정
    • 명령어 2> 파일
      • 명령어의 표준 오류를 모니터 대신 파일에 저장함

파이프

  • 명령어1 | 명령어2
    • 명령어1의 표준 출력이 명령어2의 표준 입력이 됨

'linux' 카테고리의 다른 글

[linux] 6.Others(Utilities)  (0) 2023.04.19
[linux] 4. 권한(Privilege and Permission)  (0) 2023.04.19
[linux] 3. 디렉터리와 파일  (1) 2023.04.19

댓글