배운것/LINUX

리눅스 쉘 마스터 - 리눅스 기본

SangPedia 2021. 9. 14. 11:42

강의 내용에서는 리눅스의 기본 7가지로 나누어져 있고 예제파일이 github에 업로드 되어 있습니다.
리눅스 실습환경으로는 Mac OS가 리눅스 기반으로 되어 있어서 실습하기 좋은 것 같습니다.
원도우 환경이라면 https://mobaxterm.mobatek.net/download.html home edition을 무료 다운로드 후 사용하는 방법으로 실행 상에 약간에 차이는 있지만 윈도우에서 진행 할수 있습니다.
다른 방법으로 우분투를 다운 받는 방법도 있으니 참고 바랍니다.
아래는 Mobatxterm에서 shell을 열었습니다.

mobaxterm

1. 시작하기

#강의 및 실습 예제
https://github.com/guileschool/shell_cmd/releases/tag/v1.01 혹은 https://github.com/guileschool/shell_cmd

 

2. 리눅스 파일명 규칙

  • 최대 255 자까지 가능
  • 알파벳 대소문자, 숫자 포함, 마침표, 밑줄, 하이픈(대시)
  • 알파벳 대/소문자 구별
  • 백 슬래시(\)를 이용하여 특수 문자를 이스케이프
  • 공백 문자 포함 시 인용부호 처리
  • 숨김 파일(디렉터리)명은 마침표(.)로 시작

 

3. 자동완성 기능(Auto completion)

  • tab 키를 활용한다.
# 다음과 같은 경로로 이동 후 디렉토리로 이동한다. cd /usr/bin/include # 경로확인 pwd /usr/bin/include # 긴파일을 입력할 때 tab 키를 이용해 더욱 빠르게 입력하고 디렉토리 경로로 이동할 수 있다. cd /etc/udew/rules.d/ ls vim /etc/udev/rules.d/70

 

4. 리눅스 디렉토리 구조

# 최상위 디렉토리 경로로 이동 cd / # ls # /bin directory 는 실행가능한 많은 명령어를 포함 (기본 명령어) /bin # /sbin directory 는 실행가능한 많은 명령어 중 시스템 권한을 같은 root 사용자가 사용할 수 있는 명령어 /sbin # 리눅스 운영체제에 설치된 많은 응용프로그래밍 위치 usr/bin # 설치 프로그램 명령어 들이 위치 cd /usr/local/bin # 기본 및 응용 프로그래밍 사용하는 프로그래밍 라이브러리 cd /lib # 응용프로그래밍 설치될 당시 실행프로그래밍 이외에 라이브러리 cd /usr/lib # 응용프로그래밍 설치될 당시 실행프로그래밍 이외에 라이브러리 cd /local/lib # 소위 장치파일이라고 불리는 많은 하드웨어를 작동, 응용프로그래밍이 장치프로그램을 사용 cd /dev # 환경파일이 존재, 레지스터와 비슷하며 응용프로그램들은 각자 자신이 사용하는 화경파일이 있고 # 시스템 관련 정보를 추출 , 알맞게 수행될 수 있음 /etc # 작업 디렉토리로 불리고 개발사용자들은 자신의 홈디렉토리에서 필요한 일들을 실행 /home # 시스템에 대한 많은 정보들을 담고 있고 log 파일들이 여기에 위치 함 # 우분투에서는 /syslog 에 시스템에 로그정보 파일을 확인함 /var # 프로그램 파일즈라는 프로그램 설치에 준하는 리눅스의 디렉토리로서 많은 응용프로그램이 설치됨, # 필요한 라이브러리 및 제반 시스템 파일, 해드파일을 include에 포함 됨 /usr

 

5. 경로 변경(절대 경로와 상대 경로)

  • 절대 경로(Absolute Path) : 경로 (path) / 로부터 적는 것은 절대 경로의 표현 방법
    cd /usr/local/include
  • 상대 경로(Relative Path) : 현재 디렉터리를 나타내는 방법
    ./include

 

6. 파일 접근 권한

mkdir -p dir{1,2,3}/dir{11,22,33} ls Desktop LauncherFolder MyDocuments dir1 dir2 dir3 mydir

 

- 접근권한 하드링크 소유자 소유그룹 바이트 파일 수정시각 파일명 or 디렉토리명
drwxr-xr-x 1 testwork UsersGrp 0 Sep 13 11:56 dir1

ln -s helloworld.txt helloworld.txt.sym ll total 4658 drwxr-xr-x 1 testwork UsersGrp 0 Sep 13 11:56 dir1 drwxr-xr-x 1 testwork UsersGrp 0 Sep 13 15:31 dir123 drwxr-xr-x 1 testwork UsersGrp 0 Sep 13 11:55 dir2 drwxr-xr-x 1 testwork UsersGrp 0 Sep 13 11:55 dir3 -rw-r--r-- 1 testwork UsersGrp 35 Sep 13 16:40 minicom.log drwxr-xr-x 1 testwork UsersGrp 0 Sep 13 13:24 mydir drwxr-xr-x 1 testwork UsersGrp 0 Sep 13 13:47 shell_cmd-master
  • ll 디렉터리와 파일 모두 볼 수 있음 맨 좌측에 d는 디렉터리를 표시
  • ./ 자신디렉토리
  • ../ 부모디렉토

 

7. 심볼릭 링크와 하드 링크

  • ln 하드 링크를 만들기
     ln helloworld.txt helloworld.txt.hd

    외관상 원본과 파일 내용이 별다를 것이 없고, 디렉터리는 하드 링크를 만들 수 없다.

  • ln -s 심볼릭 링크 만들기
    ln -s helloworld.txt helloworld.txt.sym​

    심볼링 윈도우의 바로가기와 비슷하며 원본 파일을 가리키는 목적 수단의 링크를 만들 수 있다.
반응형