본문 바로가기

Linux

리눅스 스터디 1주차

 

 1. 기본 명령어 사용

 

- 날짜 및 시간 확인

$ date

 

- 시스템 정보 확인

$ hostname

$ unmae

$ uname -a

 

- 사용자 정보 확인

$ whoami

$ who

 

- 디렉터리 내용 확인

$ ls

 

- 패스워드 변경

$ passwd

 

- 화면 정리

$ clear

 

2. 파일 및 디렉터리

 

 1) 파일의 종류

   - 일반 파일

      : 데이터를 가지고 있으면서 디스크에 저장된다.

        텍스트 파일, 이진 파일

 

   - 디렉터리(directory) / 폴더(folder)

      : 파일들을 계층적으로 조직화하는 데 사용되는 일종의 특수 파일.

        디렉터리 내에서 파일이나 서브디렉토리들이 존재한다.

 

   - 장치 파일 (device special file)

      : 물리적인 장치에 대한 내부적인 표현.

        키보드, 모니터, 프린터 등도 파일처럼 사용.

 

   - 심볼릭 링크 파일

      : 어떤 파일을 가리키는 또 하나의 경로명을 저장하는 파일.

 

 2) 디렉터리 계층 구조

    - 리눅스의 디렉터리는 루트로부터 시작하여 트리 형태의 계층 구조를 이룬다.

    - 홈 디렉터리(home directory)

     각 사용자마다 별도의 홈 디렉터리가 있어 사용자가 로그인하면 홈 디렉토리에서 작업을 시작함.

    - 경로명

      파일이나 디렉터리의 정확한 이름.

      

       절대 경로명(absolute pathname) : 루트 디렉터리로부터 시작하여 경로 이름을 정확하게 적는 것

       상대 경로명(relative path name) : 현재 작업 디렉터리부터 시작해서 경로 이름을 적는 것.

       

       

 

3. 디렉터리 명령어 기초

 

 1) 현재 작업 디렉터리 출력 : pwd (print working directory)

   - 사용법 : $ pwd

     현재 작업 디렉터리의 절대 경로명을 출력 

   - 현재 작업 디릭터리 (current working directory)

      : 현재 작업 중인 디렉터리.

 2) 디렉터리 이동 : cd(change directory)

   - 사용법 : $cd [디렉터리]

     현재 작업 디렉터리를 지정된 디렉터리로 이동한다. 디렉터리를 지정하지 않으면 홈 디렉터리로 이동한다.

 

 3) 명령어의 경로 확인 : which

    - 사용법 : $ which 명령어

      명령어의 절대경로를 보여준다.

 

4. 디렉터리 리스트

 

 1) 디렉터리 리스트 : ls(list)

    - 사용법 : $ ls(혹은 dir) [-aslFR] 디렉터리* 파일*

       지정된 디렉터리의 내용을 리스트한다. 디렉터리를 지정하지 않으면 현재 티렉터리 내용을 리스트한다.

       파일을 지정하면 해당 파일만을 리스트한다.

 

    - ls 명령어 주요 옵션

옵션 기능
-a (all) 숨겨진 파일을 포함하여 모든 파일을 리스트한다.
-s (size) 파일의 크기를 k바이트 단위로 출력한다.
-l (long) 파일의 상세 정보를 출력한다.
-F 파일의 종류를 표시하여 출력한다.
-R (recursive) 모든 하위 디렉터리들을 리스트한다.

 

    - $ ls -s

     : 디렉터리 내에 있는 모든 파일의 크기를 k바이트 단위로 출력

    - $ ls -a

     : 숨겨진 파일들을 포함하여 모든 파일과 디렉터리를 리스트

       "." : 현재 디렉터리 / ".." : 부모 디렉터리

    - $ ls -l

     : 파일 속성(file attribute) 출력

       파일 이름, 파일 종류, 접근 권한, 소유자, 크기, 수정 시간 등

 

    - $ ls -asl

     : 숨겨진 파일들을 포함하여 파일 속성 출력

 

    - $ ls -F

     : 기호로 파일의 종류를 표시

       * : 실행파일            / : 디렉터리         @ : 심볼릭 링크

 

    - $ ls -R

     : 모든 하위 디렉터리 내용을 리스트한다.

 

5. 디렉토리 생성과 삭제

 

 1) 디렉터리 생성 : mkdir(make directory)

   -  사용법 : $ mkdir 디렉터리

   - 중간 디렉터리 자동 생성 옵션 -p

     : 필요한 경우에 중간 디렉터리를 자동으로 만들어 줌

        ex) ~/dust 디렉터리가 없는 경우

-p 옵션을 쓰지 않으면 중간 디렉터리인 dust가 없으므로 디렉터리가 생성되지 않음. 그런데 -p를 사용하면...?
dest 디렉터리가 자동으로 생성되고 dirl이 생성됨.

 

 2) 디렉터리 삭제 : rmdir(remove directory)

   - 사용법 : $ rmdir 디렉터리

     디렉터리(들)를 삭제한다.

      *** 주의 : 빈 디렉토리만 삭제 가능.

 

6. 파일 내용 출력

 

 1) 간단한 파일 만들기 : gedit

   - 사용 방법

     : [프로그램] -> [보조프로그램] -> [gedit 텍스트 편집기]

     : $  gedit[파일이름]&

 

   - 기능

      파일 : 새로 만들기, 열기, 저장, 닫기

      편집 : 입력 취소, 잘라내기, 복사, 붙여넣기

      보기 : 도구 모음, 상태표시줄, 전체화면

      검색 : 찾기, 바꾸기

      검사 : 맞춤법 검사

      문서 : 모두 저장, 모두 닫기, 도움말

 

 2) 간단한 파일 만들기 : cat

   - 사용법

    : $ cat > 파일

      표준 입력 내용을 모두 파일에 저장한다. 파일이 없으면 새로 만든다.

 

 3) 간단한 파일 만들기 : touch

   - 사용법

    : $ touch 파일

      파일 크키가 0인 이름만 있는 빈 파일을 만들어 준다.

 

 4) 파일 내용 보기 : cat

   - 사용법

    : $ cat [-n] 파일

      파일(들)의 내용을 그대로 화면에 출력한다. 파일을 지정하지 않으면 표준 입력 내용을 그대로 화면에 출력한다.

      -n 옵션 : 줄번호 표시 (비어있는 행에는 줄번호를 표시하지 않음).

      -b 옵션 : 줄번호 표시 (비어있는 행에도 줄번호를 표시).

-n 옵션을 사용했을 때와 사용하지 않았을 때
-n 옵션을 사용했을 때와 -b 옵션을 사용했을 때
파일을 지정하지 않았을 때

 

 

 

 5) 페이지 단위로 파일 내용 보기 : more

   - 사용법

    : $ more 파일

      파일(들)의 내용을 페이지 단위로 화면에 출력한다.

      'q'를 입력하면 출력이 종료됨

 

 6) 파일 앞부분 보기 : head

   - 사용법

    : $ head [-n] 파일

      파일(들)의 앞부분을 화면에 출력한다. 파일을 저장하지 않으면 표준 입력 내용을 대상으로 한다.

 

    파일 뒷부분 보기 : tail

   - 사용법

    : $ tail [-n] 파일

      파일(들)의 뒷부분을 화면에 출력한다. 파일을 지정하지 않으면 표준 입력 내용을 대상으로 한다.

 

   - n 문장수 옵션 : 출력할 문장 수 지정

7) 단어 세기 : wc(word count)

   - 사용법

     : $ wc [-lwc] vkdlf

      파일에 저장된 줄(l), 단어(w), 문자(c)의 개수를 세서 출력한다.

      파일을 지정하지 않으면 표준 입력 내용을 대상으로 한다.

옵션을 사용하지 않았을 경우 : 줄 개수, 단어 개수, 문자 개수가 순서대로 모두 출력됨

 

-l 옵션 : 문장 개수 출력 / -w 옵션 : 단어 개수 출력 / -c 옵션 : 문자 개수 출력

 

'Linux' 카테고리의 다른 글

리눅스 스터디 6주차  (0) 2020.12.31
리눅스 스터디 5주차  (0) 2020.12.25
리눅스 스터디 4주차  (0) 2020.10.09
리눅스 스터디 3주차  (0) 2020.09.28
리눅스 스터디 2주차  (0) 2020.09.20