본문 바로가기
한국으로/임베디드 리눅스

1.2 리눅스 명령어

by 영킴. 2018. 6. 26.


1.2 리눅스 명령어

1.2.1 Shell 명령 프롬프트 구조

user@user-VirtualBox:~/work $ ls -l

{계정이름}@{시스템이름}:{작업위치} $ {명령어}

명령어 사용 형식

$ 명령 [옵션] ... [전달인자]...

// root 계정인 경우 #, 일반 사용자 계정인 경우 $ 프롬프트 기호를 씀.


명령어 매뉴얼과 도움말 얻기

 매뉴얼 명령

  $ man ls

  ls 명령의 메뉴얼을 보여줌. 

 명령어 도움말 보기

  $ ls --help

  --help 옵션으로 해당 명령어에 대한 도움말을 볼 수 있다.


$ type cd 로 쉘 내장 명령과 외부 명령을 확인해보자

쉘 내장 명령은 '{명령어} is a shell builtin' 출력.

외부 명령은 '{명령어} is hashed ({명령어 저장 위치, ex) /bin/cp}) 출력.

$ which {명령어} 로 외부 명령의 위치를 확인해볼 수도 있다.



1.2.2 디렉토리 관리 명령

 명령어

동작 

 예시

 pwd

  현재 디렉터리를 출력

  $ pwd

cd

  디렉토리를 이동

  $ cd ..  //상위 디렉토리로 이동

mkdir

  디렉토리를 생성

  $ mkdir work  //현재 디렉토리에 work 디렉토리 생성

rmdir

  비어있는 디렉토리를 삭제 (비어있지 않다면 삭제되지 않는다

  $ rmdir work  //현재 디렉토리에 work 디렉토리 삭제

 ls

  디렉토리의 파일 정보 출력

  $ ls -al  //현재 디렉토리의 모든 파일 정보를 자세히 출력



1.2.3 파일 관리 명령

 명령어

동작 

 예시

 cp

  파일이나 디렉토리 복사

  $ cp hello.c hello_copy.c

 mv

  파일이나 디렉토리 이름 변경 또는 위치 이동

  $ mv hello.c hello_move.c  //hello.c를 hello_move.c로 이름변경

 rm

  파일이나 디렉토리 삭제

  $ rm hello.c  //hello.c 파일 삭제

 file

  파일 정보를 출력

  $ file /work/test  

 touch

  비어있는 파일 생성 또는 파일 수정시간을 현재로 변경

  $ touch hello.c  //hello.c라는 빈 파일을 생성 또는 갱신

 cat

  파일 연결 또는 텍스트로 작성된 파일 화면에 출력

  $ cat one.c two.c > sum.c  //두 파일을 sum.c로 연결



1.2.4 루트 디렉토리 기본 구조

 /bin

  기본적인 바이너리 파일용 디렉토리

 /dev 

  I/O 동작을 위한 디바이스 파일용 디렉토리 

 /etc 

  시스템 관련 설정 파일 디렉토리 

 /home 

  사용자 계정의 홈 디렉토리 

 /lib 

  런타임시 사용하는 공유 라이브러리 디렉토리 

 /mnt 

  외부 장치 등 마운트 시 사용하는 디렉토리 

 /opt 

  외부 응용 프로그램 설치 디렉토리

 /proc 

  proc 파일 시스템 마운트용 디렉토리 

 /sbin 

  시스템 관련 필수 바이너리 파일용 디렉토리

 /sys 

  sysfs 마운트용 디렉토리 

 /usr 

  기타 유틸리티, 응용프로그램, 라이브러리 설치 디렉토리 



1.2.5 사용자/그룹 정보, 파일 접근권한 확인 명령어

$ cat /etc/passwd

사용자 리스트 출력 명령.
[사용자이름]:[사용자암호]:[UID]:[GID]:[설명]:[사용자 홈 디렉토리]:[사용자 로그인 쉘]

$ cat /etc/group

그룹 리스트 출력 명령.
[그룹이름]:[그룹암호]:[GID]:[그룹에 속한 사용자들]


$ ls -l /work/tmp

파일 접근권한 정보 출력 명령.
{파일종류} {접근권한} {파일소유자} {파일소유그룹} 순으로 출력.
접근권한은 rwxrwxrwx 로 표시되고, 각각 세글자씩 user, group, others 의 권한을 의미함. 

r : 읽기 권한

w : 쓰기 권한

x : 실행 권한

- : 권한 제한 (불가능)



1.2.6 파일 보안 명령

 명령어

동작 

예시 

 chmod 

  파일의 접근 권한 변경

  $ sudo chmod 777 hello  //8진모드 - 모두에게 rwx 권한 부여 (111 111 111)

  $ sudo chmod a-x hello  //기호모드 - 모두의 실행 권한 삭제(x)

 chown 

  파일 소유자 및 소유 그룹 변경 

  $ sudo chown root hello.c  //소유자를 root로 변경

 chgrp 

  파일 소유 그룹 변경

  $ sudo chgrp user hello.c  //소유 그룹을 user로 변경

 umask 

  파일 생성 시 기본 접근 권한 제한

  $ umask 0022  //파일 생성시 group, others의 쓰기권한 제한



1.2.7 표준입출력

표준입력 stdin : 0

표준출력 stdout : 1

표준에러출력 stderr : 2


'한국으로 > 임베디드 리눅스' 카테고리의 다른 글

3.1 파이프  (0) 2018.06.27
2.2 시그널  (0) 2018.06.27
2.1 프로세스  (0) 2018.06.27
1.6 파일 입출력  (0) 2018.06.27
1.5 응용 프로그램  (0) 2018.06.26
1.4 개발환경 구축  (0) 2018.06.26
1.3 vi/vim editor  (0) 2018.06.26
1.1 리눅스 개요  (0) 2018.06.25