ToBe끝판왕

[ LINUX ] 문서 편집( Vi ), 사용자 관련 명령어( 접근 권한 ), 프로세스 관련 명령어 본문

■ 프로그래밍 SKILLS/LINUX

[ LINUX ] 문서 편집( Vi ), 사용자 관련 명령어( 접근 권한 ), 프로세스 관련 명령어

업그레이드중 2022. 5. 15. 21:10
반응형

 


 Linux의 문서 편집기

▶ 행단위 / 화면단위 / GUI 편집기

▶ 모드형 / 비모드형 편집기

▶ vi 동작모드

•  [Ctrl] + C : 프로세스 종료

•  [Ctrl] + Z : 프로세스 정지(stop)

 

•  입력할때, i 를 사용 ( 끼워넣기 ), 입력모드에서 빠져나올땐 esc를 누른다.

   ( esc입력하고, : + 명령어 입력하여 나온다.)

 

▶ vi 시작 명령키

 

▶ vi 종료 명령키

 

▶ 입력모드 전환 명령키

 

 

•  set number : 줄번호 보이기

•  set nonumber : 줄번호 보이기 취소

 

▶ 화면 이동하기 명령키

▶ 특정행 이동 명령키

 

 내용 수정 명령키

 내용 삭제 명령키

 명령 취소 키

 복사하기 , 잘라내기 , 붙이기 명령키

 검색 명령키

 바꾸기 명령키

 환경설정 명령키


 

자바 소스 편집, 컴파일

Java 프로그램 언어를 실행할려면, jdk가 있어야 한다.

jdk 다운로드 : 명령키 $ sudo apt install openjdk-11-jdk 를 입력한다.

 Java 파일 만들어서 실행해보기

1)

$ vi HelloWorld.java 입력후 vi편집기에서 Java 코드작성

 

2)

javac 파일명 : 컴파일

java 파일명 : 실행

결과값 출력

3) JFrame도 한번 만들어보기

- $ vi JFrameEx.java : vi 편집기에서 코드작성

- $ javac JFrameEx.java

- $ java JFrameEx

 

 

 

 

 실행 결과 출력


 파일의 속성

 

 

 각 번호 속성값 예시

 

 

1) 파일의 종류 표시

•  file 파일명

    ex) file /etc/

•  파일의 접근권한 표시

2) 파일의 접근권한

접근권한의 종류 : 읽기, 쓰기, 실행 권한 등 세가지로 구성

3) 접근권한의 변경 명령

•  chmod 명령어

•  파일이나 디렉터리의 접근권한을 변경

•  chmod [옵션] 권한모드 파일 또는 디렉터리명

•   -r : 하위 디렉터리까지 모두 변경

•  바꾸는 방법 2가지

- 기호모드 : 접근 권한을 변경하기 위해 문자와 기호를 사용하여 권한 표시

- 숫자모드 : 접근 권한을 변경하기 위해 숫자 사용

 

▶  기호모드

ex) 1.txt 를 기호모드를 이용하여 접근권한을 변경해 보자

소유자의 쓰기권한 제거 : u-w

▶  숫자모드

ex) test.txt 를 숫자모드를 이용하여 접근권한을 변경해 보자

앞의 접근권한들이 변경되는것을 볼수 있다.

4) 기본 접근 권한 설정

- 리눅스에서는 파일이나 디렉터리를 생성할때, 기본 접근 권한이 자동적으로 설정

- 일반파일의 경우, 소유자는 읽기, 쓰기 권한 설정되고 그룹과 기타사용자는 읽기 권한만 설정

- 디렉터리의 경우, 소유자는 읽기, 쓰기, 실행 권한 설정되고 그룹과 기타사용자는 읽기, 실행 권한만 설정

▶  umask

•  기본 접근 권한 확인하고 변경하기

•  umask [옵션] [마스크값]

•   -s : 마스크값을 문자로 출력

 

•  마스크 값의 의미

- 마스크 값은 파일이나 디렉터리 생성 시 부여하지 않을 권한을 지정해놓는 것

- 마스크 값이 022일 경우 이는 ----w--w-이고, 그룹과 기타 사용자에게 쓰기 권한은 부여하지 않겠다는 뜻

- 최대 권한에서 마스크값을 뺀 것이 기본 권한이 부여되는 것이다.

- umask로 마스크 값을 바꿀 때 파일과 디렉터리에 모두 적용해봐야 함

- 마스크 값이 파일에는 적합하지만 디렉터리에는 적합하지 않을 수도 있음


 

프로세스 관련 명령어

•  프로세스 : 현재 시스템에서 실행중인 프로그램

•  프로세스는 부모-자식 관계를 가지고 있다.

•  각 프로세스는 고유한 번호를 가지고 있는데 이것이 PID이다.

•   프로세스는 처리하는 cpu와 메모리 할당이 있다.

•  현재 실행 중인 프로세스의 목록을 보는 명령: ps

▶  ps

ex)

ps : 현재 실행중인 프로세스

ps a : 모든 프로세스 확인하기

ps au : 모든 프로세스와 유저까지 출력

- ef 옵션 사용: 해당 프로세스의 더 자세한 정보 출력

- ps 명령과 grep 명령을 |로 연결하여 특정 프로세스에 대한 정보를 검색

ps -ef | grep bash : bash만 들어간 프로세스만 출력

ps -ef | grep root : root가 사용하는 프로세스만 출력

ps ax | more : 시스템에서 실행 중인 모든 프로세스를 출력

- pgrep

▶  Kill

단순히 kill 명령으로는 종료되지 않는 경우 강제 종료 시그널인 9번을 보낸다.

▶   top

프로세스 상태 보기

▶  pstree

모든 프로세스트의 트리형태 확인

▶  포그라운드 작업

사용자가 입력한 명령이 실행되어 결과가 출력될 때까지 기다려야 하는 방식

=> ctrl + Z : 멈춤

=> bg 1 : 백그라운드로 전환

=> jobs ( 확인 )

=> fg 1 : 포그라운드로 다시 전환

=> ex) $ sleep 100

▶  백그라운드 작업

명령을 실행하면 명령의 처리가 끝나는것과 관계없이 곧바로 프롬프트가 출력되어 사용자가 다른작업을 계속할수 있음

=> 작업중이 안보이므로 jobs로 확인 가능 ( 실행중, 완료 )

=> ex) $ sleep 100&

 

▶  at

 

 

▶  crontab

 


 

반응형
Comments