Chapter 2

GraGrass·2024년 2월 19일

리눅스 기본 명령어 1

1. 명령어 구조와 매뉴얼

리눅스 명령어의 기본 구조

  • Command(명령어) + Options(옵션) + Arguments(인자)

명령어 매뉴얼

  • 시스템에서 제공하는 도움말(Manual Page)
  • 기본적으로 Command 마다 해당 Man Page 를 가짐

ManPage 조작

  • 다음 페이지를 보기 위해서는 Space Bar 또는 ‘f’ 입력
  • 이전 페이지를 보기 위해서는 ‘b’ 입력
  • 마치려면 ‘q’ 입력

명령어 확인 방법

$ which ls
alias ls='ls --color=auto'
	/usr/bin/ls

$ which cal
/usr/bin/cal
  • which: 명령어의 경로를 보여줌
$ whereis ls
ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz /usr/share/man/man1p/ls.1p.gz

$ whereis cal
cal: /usr/bin/cal /usr/share/man/man1/cal.1.gz 
/usr/share/man/man1p/cal.1p.gz
  • whereis: Which와 비슷한 명령어로, 실행파일, 소스, Man Page 경로를 보여줌
  • whatis: 명령어가 무슨 일을 하는지 설명 해줌

2. 리눅스 디렉터리 구조

디렉터리 구조

디렉터리기능
/usr공유 가능한 파일들을 포함
/etc시스템에서 사용하는 설정 파일
/bin기본적인 실행 가능한 명령 파일을 가지고 있음
/tmp임시 디렉터리
/dev장치 파일들이 있는 디렉터리
/lib기본적인 프로그램 모듈이 있는 디렉터리

디렉터리 생성/이동/삭제

$ mkdir [-pv] [-m mode]
  • 새로운 디렉터리를 만들 때 사용
$ rmdir [-p]
  • 디렉터리를 삭제할 때 사용
$ cd
  • 디렉터리 이동 명령
$ pwd
  • 현재 디렉터리 위치를 보여줌

Absolute path / Relative path

  • 절대 경로: /(root directory) 기준
  • 상대 경로: .(current directory) 기준

파일 생성/이동/삭제

$ touch
  • 파일이 존재할 경우 파일의 수정날짜를 변경
  • 파일이 존재하지 않을 경우 0 kb 파일 생성
$ stat
  • 파일의 상태를 확인
$ cp [-R] [-i | -n]
  • 파일 복사 명령
  • 속성을 유지할 경우-a옵션 추가
$ mv
  • 파일 이동 명령
$ rm [-rf]
  • 파일 삭제 명령

ls 명령어

옵션기능
-l파일 및 디렉터리를 list 형식으로 출력
-a모든 파일, 디렉터리 출력(숨김 파일 포함)
-R하위 디렉터리의 파일까지 보여줌
-S파일 크기가 큰 순서로 출력
-F파일 뒤에 구분자 표시 (디렉터리는 /, 실행 파일은 *)
-h용량을 K, M, G와 같은 읽기 쉬운 형태로 보여줌
-r정렬할 때, 역순으로 보여줌
-t수정된 시간 순서로 보여줌
  • 디렉터리 내의 디렉터리 및 파일 목록을 보기 위한 명령

3. 파일 속성

속성 확인(ls -l)

속성/허가권 필드

문자파일의 유형별 의미
-일반 파일
b파일의 입출력과 관련된 블록 디바이스 용도의 장치 파일 (/dev/sda, /dev/hda 등)
c터미널, 네트워크, 프린트, 마우스, 사운드카드와 같은 장치관련 캐릭터 디바이스 용도의 장치 파일 (/dev/console 등)
d디렉터리
l심볼릭 링크 파일
p파이프
s소켓
  • 파일 속성 및 허가권을 총 10개의 문자로 표시
  • 1+3+3+3 으로 구분하여 읽음
  • -rw-r--r-- : - + rw- + r-- + r—
  • 파일 유형 + 소유주(User) 권한 + 그룹(Group) 권한 + 나머지(Other) 사용자 권한

파일 허가권 영역

  • 사용자(User) / 그룹(Group) / 나머지(Other) 권한 설정
  • r : 읽기, w : 쓰기, x : 실행, - : 해당 권한 없음
  • 숫자로도 표현 가능(1은 가능, 0은 불가능)

파일 속성 변경

$ chmod u+rw my.txt
$ chmod u-w, o+r test.exe
who설명
u파일을 소유한 사용자 (User)
g파일에 대한 소유권을 가진 그룹 (Group)
o다른 사용자 (Other)
a모든 사용자 (All)
  • 파일 권한 변경
  • chmod [Who][+/-] [새로운 권한][파일명]
  • + 를 사용하여 권한을 더해줄 수 있고, - 를 사용하여 권한을 삭제

파일 내용 확인

$ cat 
  • 간단한 텍스트 파일을 생성 하거나 텍스트 파일 내용을 확인
$ echo "hello"
hello

$ echo $HOME
/home01/sedu50
  • 텍스트를 화면 상에 출력

4. 리다이렉팅

리눅스에서 지원하는 가장 강력한 명령어 방식

  • 명령어나 프로그램의 결과를 스크린에 보여주는 것처럼 파일을 방향 전환을 하는 기능
  • 파일을 입력 또는 출력으로 사용
  • 명령의 결과를 다른 명령의 입력으로 사용할 수 있음

명령어 간의 파이프 ‘|’

$ who | grep "sedu"
  • Who 명령어는 시스템에 접속한 사용자가 누구인지,
    어떤 터미널이 사용되고 있으며, 언제 로그인 했는지를 살펴보는 명령어
  • Grep 은 주어진 패턴과 일치하는 Line 만을 골라내어 보여주는 명령어 (주요옵션 -i : Ignore, -v : Not Match)
  • ‘Who’ 로 나열되는 사용자 중 Sedu이 포함된 User가 있는지를 보여줌
profile
올해는 진짜 갓생 산다

0개의 댓글