티스토리 뷰

리눅스 리다이렉션 프로세스 링크
리눅스 리다이렉션 프로세스 링크

 

목차

     

    리다이렉션

    표준 입출력을 이해해야 합니다. 영어로는 Standard Steam이라고 합니다. command로 실행되는 프로세스는 세 가지 스트림을 가지고 있습니다. 표준 입력 스트림(stdin), 표준 출력 스트림(stdout), 오류 출력 스트림(stderr)가 있습니다. 모든 스트림은 일반적인 plain text로 console에 출력하도록 되어 있습니다. 리다이렉션은 > 또는 < 기호를 사용합니다. ls -al > test.txt라고 하면 ls -al의 결과가 test.txt 파일에 저장됩니다. head < test.txt라고 하면 test의 10줄이 표시됩니다. 기존 파일에 추가하려면 >> 나 <<를 사용합니다. 파이프는 두 프로세스 사이에서 한 프로세스의 출력 스트림을 또 다른 프로세스의 입력 스트림으로 사용할 때 사용된다. ls - al | grep bash은 ls -al 중에서 bash 파일을 출력해주는 것입니다. ps aux | grep bash는 현재 작동중인 프로세스 중에서 bash 파일을 출력해줍니다.

     

    프로세스

    리눅스 셀 사용법 중에서 프로세스 관리에 대해서 알아보겠습니다. c언어 코드를 컴파일하면 1과 0으로된 바이너리 파일이 나옵니다. 바이너리 파일을 코드 이미지라고도 합니다. 바이너리 파일을 운영체제가 실행하면 프로세스로 바꿉니다. 실행중인 프로그램을 프로세스입니다. 바이너리 파일을 메모리에 넣고 처리를 합니다. 리눅스는 기본적으로 다양한 프로세스가 실행됩니다. 프로세스사 서로 유기적으로 여러 일을 합니다. 프로세스는 foreground / background 프로세스가 있습니다. foreground 프로세스는 해당 프로세스가 끝날 때까지 사용자는 다른 입력을 하지 못합니다. background process는 사용자의 입력과 관계없이 실행되는 프로세스입니다. 프로세스에는 작업번호와 프로세스 id(PID)가 있습니다. foreground process는 Ctrl + C키로 취소할 수 있습니다. ps 명령어로 어떤 프로세스가 실행중인지 알 수 있습니다. ps aux로 여러 정보를 확인합니다. ps aux | grep bash와 같이 사용합니다. 프로세스 중에 bash 파일이 있는지 확인합니다. kill PID로 프로세스를 종료할 수 있습니다. kill 명령어에서 -9는 강제작업 옵션입니다. kill -9 PID로 강제종료합니다.

     

    하드링크와 소프트링크

    cp 명령어로 파일을 복사합니다. cp A B라고 하면 A파일을 B파일로 복사합니다. 폴더 전체를 다른 폴더로 복사하기 위해서 cp -rf * 폴더이름으로 명령어를 실행합니다. 하드 링크는 ln A B로 한다. A와 B은 연결됩니다. A를 바꾸면 B도 바뀐다. 동일한 파일을 가진 것을 하나 더 만드는 것입니다. 소프트링크는 심볼릭링크라고도 합니다. 윈도우의 바로가기 아이콘과 같습니다. ln -s A B로 사용합니다. A파일이 지워지면 B파일을 쓸 수 없습니다.

    댓글
    댓글쓰기 폼