Cohe

리눅스 명령어 공부 1 본문

배포 배우기

리눅스 명령어 공부 1

코헤0121 2024. 7. 23. 10:12
728x90

#리눅스 디렉토리 구조

"/(root)" : 리눅스 상에 존재하는 모든 파일과 디렉터리를 담고 있는 최상위 디렉터리
"/bin":리눅스의 기본 명령어가 들어 있는 디렉터리(명령어는 "실행파일")
"/boot":리눅스 커널의 메모리 이미지와 부팅 과정에 필요한 파일이 저장된 디렉터리
"/dev":장치 파일이 들어 있는 디렉터리
"/etc":시스템이나 사용자 관리를 위한 자료 파일이나 관리자용 명령들이 있는 디렉터리
"/home":관리자(root) 이외의 사용자의 홈 Directory가 생성되는 위치의 디렉터리
"/lib":각종 언어를 위한 라이브러리를 가지는 디렉터리
(lib64는 64비트 라이브러리들이 존재하는 디렉터리)
"/media":Local Device를 이용하기 위한 디렉터리(CD/DVD)
"/mnt":Remote Device를 이용하기 위한 디렉터리(블루투스)
"/opt":동작과 관련된 추가 옵션 설정에 대한 내용이 저장되는 디렉터리
"/proc":커널과 프로세스 정보를 담고 있는 파일이 저장되는 디렉터리
"/root":관리자 홈디렉터리
"/run":운영체제 내에 구동중인 내용들이 담기는 디렉터리
"/sbin":관리자용 명령어가 저장되는 디렉터리
"/sys":시스템 관련 파일이 담겨지는 디렉터리
"/tmp":임시파일이 저장되는 공간
"/usr":용량이 크고 자주 사용되지 않는 파일들이 들어있는 디렉터리
"/var":Log와 같이 잦은 변경이 일어나는 파일이 저장되는 디렉터리

==========================================================

리눅스의 기본 명령어 사용법

명령어 형식

  1. [명령어] - 단독으로 명령어만으로 사용하는 경우.
    ex) pwd, ls(생략) ...
  2. [명령어] [경로] - 특정 경로에 명령어를 사용하는 경우
    ex) ls / , ls /etc/ ("/"해당 디렉터리의 파일/디렉터리 정보를 출력)
    cd [경로]
  3. [명령어] [옵션] [경로] - 특정 경로에 옵션이 부여된 명령어를 사용하는 경우

    ex) ls -l / , ls -l /etc/

경로 결정 방법 2가지

  1. 절대 경로
    : 리눅스 파일 시스템의 최상위의 "/(root)"를 기준으로 모든 경로 정보를 다 입력하여 사용하는 것!

ex) cd /etc/ , cd /etc/sysconfig , cd /

  1. 상대 경로
    : 리눅스 파일 시스템의 상대 경로는 현재 작업 중인 디렉터리를 기준으로 파일이나 디렉터리에 대한 상대적인 위치 정보를 사용하는 것!!

". " : 현재 디렉터리를 의미함.

".. " : 이전(상위) 디렉터리를 의미함.
"~(사용자계정)" : 사용자 계정의 홈디렉터리로 이동
"- " : 바로 전의 디렉터리 이동

======================================================

  1. ls[list] : 디렉터리 내에 목록을 출력하는 명령어
[형식]
 ls [옵션] [경로]

(옵션)
 -l  : 목록을 상세히 출력
 -n : 소유권을 숫자값(UID/GID)으로 표현하여 출력
 -d : 지정한 디렉터리의 정보를 출력(디렉터리 내 목록을 출력하지 않음)
 -R : 디렉터리 하위경로까지 전부 출력
 -a : 모든 파일 디렉터리를 출력(숨김도 출력)
 -F : 파일이나 디렉터리의 기호를 표시(특성 표시)
  1. mkdir : 디렉터리 생성 명령어

형식
mkdir [옵션] [경로]

(옵션)
-p : 상위 경로까지 모든 디렉터리를 생성(없다면!!!)
-m {퍼미션} : 디렉터리 생성과 동시에 권한 설정!!
*퍼미션(허가권) - Read(읽기), Write(쓰기), eXcute(실행)

  1. rmdir : 디렉터리 삭제

**빈 디렉터리만 삭제 가능함(파일이 존재하면 삭제X)

[형식]
rmdir [옵션] [경로]

(옵션)
-p :상위 경로도 같이 삭제
(단, 빈디렉터리만 삭제 가능함...)

  1. touch : 파일이 없는 경우, 내용이 빈 파일을 생성
    파일이 있는 경우, 파일의 시간을 명령하는 명령어
[형식]
 touch [옵션] [경로/파일]

(옵션)
  -a : 최근 파일 사용 시간만 변경(Access)
  -c : 파일이 존재하지 않는 경우 파일을 생성하지 않는 옵션
  -m : 최근 파일 변경(수정) 시간만 변경함. (Modify)
  -t : 지정한 시간대로 파일의 시간을 변경
      시간 설정 형식 : MMDDhhmm[[CC]YY[.ss]] 등과 같은 형식으로 지정할 수 있음.
ex) touch -t 202009281217 test
  -r "파일" : 현재 시간 대신에 "파일"의 시간을 설정함.
         ex) touch -r test lastyear  => test파일의 시간대를 lastyear에 설정
  1. cp(copy) : 파일이나 디렉터리를 복사하는 명령어
[형식]
  cp [옵션] [Source] [Destination-target]

-Source : 원본 파일
-Destination : 복사 위치/파일명

(옵션)
 -a : 복사 대상 원본파일의 속성과 링크 정보등을 그대로 유지하면서 복사하는 옵션(-dpR)
 -d : 심볼릭 파일 자체를 심볼릭 링크 정보와 함께 복사할 때 사용
 -p : 모드, 소유자, 시간 등을 그대로 유지한 상태로 복사할 경우 사용.
 -R : 하위의 모든 디렉터리까지 복사하는 옵션
 -f : 복사할 위치에 같은 이름의 파일이 존재하는 경우, 파일 삭제후 복사
 -i : 복사할 위치에 같은 이름의 파일이 존재하는 경우, 사용자에게 복사 여부를 확인하는 절차를 진행.
     (cp를 사용하면 alias로 cp -i가 동작함)
 -s : 복사하는 대신에 심볼릭 파일을 생성하는 옵션
 -v(vebos) : 각 파일의 복사 상태 정보를 출력하고자 하는 경우 사용하는 옵션
  1. rm(remove) : 파일이나 디렉터리(옵션을 사용할 경우)를 제거하는 명령어
[형식]
  rm [옵션] [경로/파일]

(옵션)
  -f  : 파일을 삭제시 확인 메시지를 출력하지 않도록 하는 옵션
  -r  : 디렉터리를 삭제할 경우에 사용하는 옵션
  1. mv(move) : 파일/디렉터리을 이동하는 명령어로 옵션은 거의 cp와 비슷함.

    mv명령어와 cp명령어의 차이점

    • mv : 원본 파일을 삭제
    • cp : 원본 파일을 삭제X

============ 문서의 내용을 출력하는 명령어 =================
=> head, tail, more, less, cat

  1. head : 파일의 내용을 위에서부터 출력(기본 10줄)
[형식]
 head [옵션] [경로/파일]

(옵션)
  -n(숫자) : 출력하고자 하는 줄의 숫자를 입력하면 해당 줄 만큼 출력
  1. tail : 파일의 내용을 뒤에서부터 출력(기본 10줄)
[형식]
 tail [옵션] [경로/파일]

(옵션)
  -n(숫자) : 출력하고자 하는 줄의 숫자를 입력하면 해당 줄 만큼 출력
  -F   : 실시간으로 추가로 작성되는 내용을 표기할 수 있음.
  1. cat : 텍스트 파일의 내용을 출력
[형식]
 cat [옵션] [파일]

(옵션)
  -b : 줄번호를 화면 왼쪽에 표시함. (단, 공백은 제외)
  -e : 제어문자를 ^형태로 출력하면서 각 행의 끝에 $를 추가
  -n : 줄번호를 화면 왼쪽에 표시함. 공백도 포함
  -s : 중복되는 빈 행은 하나의 빈 행으로 처리하여 출력

예) cat /etc/sysconfig/selinux

  1. more : 화면 단위로 끊어서 출력
[형식]
 more [옵션] [파일]

(옵션)
  +(숫자) : 파일에 숫자만큼 줄을 이동한 후에 화면에 출력
  -(숫자)  : 화면에 숫자만큼 줄을 끊어서 출력함.
  1. less : 출력된 화면을 이동하면서 확인할 수 있는 명령어
    (재검색 가능. 방향키 사용함)

==============================================

파이프( | )

: 한 프로그램의 출력을 중간 파일 없이 다른 파일의 입력으로 바로 보내는 유닉스 매커니즘. "|"기호를 기준으로 왼쪽 명령어의 출력 결과를 오른쪽 명령어의 입력으로 보내는 기능.

ex) ls -l /etc/sysconfig | more -10
#1 -> #2

   ls -l /etc/sysconfig | cat -b | less
      #1                 -> #2   -> #3
  1. grep : 파일 내에 또는 입력값에서 특정 패턴 검색하는 명령어
 [형식]
  grep [옵션] [검색패턴] [파일/경로]

 (옵션)
   -v  : 일치되는 내용이 없는 라인을 표시
   -l(소문자) : 일치되는 내용이 있는 파일의 이름만 표시
   -c  : 일치되는 내용이 있는 행의 갯수를 표시
   -n  : 일치되는 내용이 있는 행의 행번호와 함게 표시
   -i  : 패턴에 대소문자 구분하지 않음.
   -e 표현(정규표현식) : 표현하는 하이픈 문자로 시작될 때에 사용. **egrep과 grep -E와 같음.
   -f "파일" : 찾으려고하는 장이나 파일을 지시
  • grep에서 사용되는 검색 문자 패턴 정규 표현식
    "." : 어떤 문자나 한 문자를 의미
    "
    " : 어떤 문자나 문자열의 길이 상관없이 모든 문자열을 의미함.
    "^" : 행의 시작 위치를 의미함.
    "$" : 행의 마지막 위치를 의미함.
    "[]" : 한문자 길의 패턴리스트
    ex) [0-9] -> 0~9 ,
    [a-z] -> a ~ z
    "[^]" : 지정된 문자들 이외의 문자들을 의미함.
    (^는 여집합을 의미함)
    ex) [^0-9]
    "" : 위에 설명한 특수한 의미의 문자들을 문자 그 자체로 인식할 때 사용
    (ESCAPE, 특수 문자를 일반문자로 표현할때)
    "<" : 단어의 시작 위치를 의미함.
    ">" : 단어의 마지막 위치를 의미함.

'배포 배우기' 카테고리의 다른 글

리눅스 다운  (0) 2024.07.25
리눅스 소켓 연결하기 2  (2) 2024.07.24
리눅스 소켓 연결하기  (4) 2024.07.24
리눅스 명령어 공부 3  (4) 2024.07.23
리눅스 명령어2  (5) 2024.07.23