본문 바로가기

리눅스9

셸 변수와 환경 변수 셸이나 리눅스 애플리케이션은 고유 변수를 사용해서 동작을 규정하거나 실행에 필요한 정보를 설정할 수 있다. 변수에는 셸 변수와 환변 변수 두 종류가 있다. 셸 변수는 변수를 설정한 셸에서만 유효해서 셸 동작이나 정보를 설정하는 목적으로 사용되고 환경 변수는 해당 셸에서 실행한 프로세스에도 설정이 이어지기 때문에 애플리케이션을 실행할 때 필요한 설정에 많이 사용된다. 1. 셀 변수, 환경변수 표시하기 $ echo $BASH 위와 같이 $[변수명] 으로 나타낼 수 있다. $ echo "USER=$USER" 문자열 안에 포함되도록 출력하려면 쌍따옴표를 사용하면된다. 2. 셸 변수 표시하기 $ declare declare 명령어를 사용하면 현재 유효한 모든 셸 변수를 출력한다. | grep 등을 사용해서 조회하.. 2023. 1. 28.
디바이스 파일 /dev/null /dev 디렉터리 아래에는 autofs, disk, sda, null 같은 다양한 파일이 있는데 이런 파일을 디바이스 파일이라고 한다. 하드웨어 디바이스 드라이버나 가상 디바이스를 파일처럼 읽고 쓰기가 가능한 가상 파일이다. /dev/null 디바이스 파일은 쓰기를 하면 무시하고 파일을 읽으면 파일이 끝났다는 기호를 돌려주는 가상 파일이다. 명령어 출력이나 에러 메시지를 제어하고 싶을 때 표준출력 or 표준에러출력을 /dev/null으로 리다이렉트하면된다. 한 가지 예시를 들어보겠다. ex) apple 파일은 존재하고 peach 파일은 존재하지않을경우 $ ls -l apple peach 2>&1 > /dev/null 위 명령어를 입력하면 순서1. > /dev/null 순서2. 2>&1 순서1 에서 표준입.. 2023. 1. 26.
리눅스 명령어-12 명령어 입출력을 파일로 전환 표준 출력 리다이렉트 ps 명령어 출력 결과를 pslog 파일로 저장해보자 ex) ps 명령어 출력 결과를 pslog 파일에 저장 $ ps > pslog $ cat pslog 표준 출력을 파일로 전환하려면 리다이렉트 기호 > 를 사용한다. 그리고 출력을 저장할 파일 이름을 > 뒤에 지정하면된다. 리다이렉트 기호 > 를 사용했을 경우 지정장 파일이 이미 존재하면 덮어쓰기한다. 덮어쓰기가 아니라 파일 끝에 추가하고 싶으면 리다이렉트 기호 >> 를 사용하면된다. ex) date 출력결과를 pslog 파일 뒤에 이어붙이기 $ date >> pslog $ cat pslog 기존 pslog 파일에 date 명령어 실행 결과가 추가되었다. 표준에러 출력 리다이렉트 표준 에러출력은 번호를 지정해서 리다이렉트 할 수 있.. 2023. 1. 25.
표준입력, 표준출력, 표준에러출력 리눅스를 비롯한 유닉스계열OS에는 입출력을 통일된 방식으로 다루는 표준 입력(STDIN), 표준 출력(STDOUT), 표준 에러출력(STDERR) 이렇게 세 종류의 입출력이 있다. 보통 표준 입력은 키보드, 표준출력과 표준 에러출력은 터미널(화면)과 연결된다. $ sort (enter) Cat (enter) Bean (enter) Apple (enter) (ctrl + d) Apple (sort 명령어 실행 결과.표준출력) Bean (sort 명령어 실행 결과.표준출력) Cat (sort 명령어 실행 결과.표준출력) 위 예제처럼 정렬할 값들을 키보드로 입력하고 입력 종료를 뜻하는 Ctrl + d 키를 누르면 입력한 값을 정렬해서 결과를 화면에 표시한다. 표준입력, 표준출력, 표준에러출력은 어디서 받아서 .. 2023. 1. 25.
리눅스 명령어-6 (head/tail) 1. 텍스트 파일 앞 부분 출력 head $ head [filename] head 명령어는 인수로 지정한 파일에서 앞부분만 표시한다. 표시할 줄 수를 지정하지 않으면 기본으로 10줄만 표시함. 1-2. 표시할 줄 지정 $ head -n [filename] n = 표시할 줄 수 2. 파일 끝부분 표시하기 tail $ tail [filename] tail 명령어는 인수로 지정한 파일 내용 끝부분만 표시한다. 표시할 줄 수를 지정하지 않으면 끝에서 10줄만 출력한다. 2-1. 표시할 줄 지정 $ tail -n [filename] n = 표시할 줄 수 3. head / tail로 다른 명령어의 실행 결과를 잘라서 표시하기 $ 다른명령어 | head -n ex) ps auxw | head -20 -> ps aux.. 2023. 1. 20.
프로세스란? 프로세스는 '실행 중인 프로그램의 단위' 이다. 프로그램과 프로세스의 차이 일련의 작업을 컴퓨터에 실행시키는 방법이 적힌 파일 또는 실행 내용이 프로그램이다. 프로그램을 실행해서 독립적으로 동작하는 하나하나를 프로세스라고 한다. OS는 명령어를 실행할 때 프로세스를 생성하고 프로세스 ID 라는 번호로 구분해서 관리한다. 프로그램 실행 명령어를 두 번 실행하면 프로세스도 두 개 생성된다. 프로세스는 명령어를 실행하면 생성되고 프로그램 처리가 모두 끝나면 삭제된다. 프로세스가 생성될 때 프로세스 ID 이외에도 프로세스를 생성한 사용자, 프로세스 우선순위, 실행 시작 시각 등 몇 가지 정보를 컴퓨터에 저장한다. OS는 이런 정보로 프로세스를 관리하는데, 프로세스 정보는 ps 명령어로 확인가능하다. ps 명령어.. 2023. 1. 14.