22.05.02 TIL

귀찮Lee·2022년 5월 2일
0

TIL / 회고록

목록 보기
4/35

22.05.02 / Today I Learned

◎ 학습 전

※ 오늘 나의 학습 목표는 무엇인가요?

  • CLI 기본 명령어

    • 리눅스 터미널을 실행할 수 있다.
    • CLI를 이용한 작업과 GUI를 이용한 작업이 동일함을 이해할 수 있다.
    • 리눅스 터미널에서 기본적인 명령어를 사용할 수 있다.
    • 명령어를 사용할 때, 등장하는 키워드에 대해 이해할 수 있다.
    • 절대 경로와 상대 경로의 차이를 이해할 수 있다.
    • 텍스트 에디터 nano를 이용해 파일을 수정하고, 저장할 수 있다.
  • 패키지 매니저

    • Linux Ubuntu 운영체제에서 사용하는 apt 패키지 매니저에 대해 알고, 명령어를 통해 패키지를 관리할 수 있다.
  • 사용 권한과 소유자에 대해 이해하고, 사용 권한을 변경할 수 있다.

    • 파일의 소유자와 파일에 적용된 사용 권한을 확인하고 이해할 수 있다. ls -l
    • 파일에 적용된 사용 권한을 변경할 수 있다. chmod
  • 환경변수

    • 환경변수가 무엇이고, 왜 사용하는지 이해한다.
    • 전역 및 지역 환경변수의 차이를 이해한다.
    • 환경변수를 임시적 또는 영구적으로 적용할 수 있다.
    • 환경변수의 개별값을 확인할 수 있다.
    • 환경변수들의 목록을 확인할 수 있다.

※ 오늘 학습할 내용 중에 이미 알고 있는 내용은 무엇인가요?

  • 리눅스의 아주 기본적인 명령어들 ls, mkdir, ...
    -> 해당 명령어를 암기하고 있는 것은 아니지만, 사용해본 적 있음
  • JS에서 상대경로로 파일을 import 해본 적 있음 (대충 앎)
    -> 예시 ../test/test.js

◎ 학습 후

※ 오늘 학습 내용 중 새롭게 배운 내용은 무엇인가요?

  • 관리자 권한의 필요성 - OS 임의 수정방지, 외부 안좋은 프로그램 방지

  • 텍스트 에디터 nano - CLI 환경에서 가벼운 코드 수정

  • Ubuntu 패키지 매니저의 존재 - apt

  • Read, Write, Execute 권한 및 권한부여방법

  • 환경변수의 필요성 - 다른 프로그램의 사용이 필요할 때, 해당 경로를 지정할 수 있음 (타 컴퓨터에서도 수월하게 사용하기 위해)

  • 환경변수 설정방법

※ 나의 오늘 학습 만족도는 몇 점인가요?

  • 학습 태도 68점 : 예전 단어시험 합격점이 70점이었는데, 그 점수는 못 줄것 같다. 나는 더 빨리하면 더 빨리 쉴 수 있다는 것을 생각하자.
  • 이해도 85점 : 솔직히 말해 오늘 내용을 공부하면서 이해하기 어려운 부분은 전혀 없었다. 내가 조금 더 보완할 점은 이해가 된다고 직접 안해보고 넘기지 말고, 이것저것 해보면서 더 이해도를 높일 것
  • 학습 만족도 90점 : 웹개발을 해 보면서 하나하나 이해하지 않고 보이는 대로 복사해서 붙여넣으면서 세팅했던 부분이 이 부분이다.
    지금은 명령어를 보면서 더 잘 이해할 수 있을 것 같다.

◎ 생각 정리

  • 오늘의 나의 점수 80점
    지금 당장 내가 배운 웹개발 중에서 크게 중요하지 않은 부분이라고 생각이 드는 것 같다. 그냥 현재까지 사용했던 몇개 코드를 복사 붙여넣기만 해도 항상 잘 작동을 했으니까... 언젠가는 다 한번씩 필요해서 돌아볼 것 같지만, 그래도 집중이라던가 관심도가 떨어지는 것은 어쩔 수 없는 것 같다.
    저번주 학습태도보다는 조금 나아진 것 같다. 그리고 내가 중요한 내용이라고 판단한다면 나는 더 집중 할 수 있다는 것을 알고 있다. 나를 자책하지 말고 더 나아진 모습을 보면서 칭찬정도 해 줄 수 있을 것 같다.

  • 해야할 일(저녁타임)

    • 약 1시간정도 알고리즘 공부

◎ 오늘 배운내용들 정리

  • CLI, GUI

    • CLI(Command Line Interface) : 명령어를 통해 입력함, 글로 출력함 ex)Linux,
    • GUI(Graphic User Interface) : 그래픽적인 요소를 통해 입,출력을 지원 ex)window, mac, android
  • 리눅스 터미널 실행

    • ubuntu -> 아직 세팅되어 있지 않은 곳을 보여줌 (이전 개발환경 세팅시에 같이 설치됨)
    • WSL -> window OS 내부에 있는 파일들을 보여줌
  • 리눅스 터미널 기본적인 명령어

    • pwd : 현재 위치 확인 (print working directory)
    • mkdir [폴더 이름] : 새로운 폴더 생성 (make directory)
    • ls : 현재 위치에 있는 파일, 폴더 확인 (list)
      • 옵션 -l : 포멧을 전부 표현
      • 옵션 -a : 숨겨져있는 것 모두 표현
    • cd [폴더 경로] : 폴더 이동 (change directory)
      • 상대경로 : 현재 위치에서 상대적인 경로 나타냄
        ex) ./ : 현재위치, ./test : 현재 위치에 test 폴더로 들어감, ../../ : 두단계 위
      • 절대경로 :
    • touch [파일명] : 해당 파일 생성
      ex) touch hi.txt
    • cat [파일명] : 파일 내용을 터미널에 출력
    • rm [파일] : 파일 내용 삭제
      • rm -rf [폴더명] : 폴더 내용 삭제
      • -r : 특정 행동을 순환적으로 반복(recursive)
      • -f : 어떤 행위를 강제 (force)
    • mv [파일명] <경로> : 파일 이동 (move)
      • mv [파일명] <파일명> : 파일 이름 변경
    • cp [원본파일] <복사할 파일명> : 파일 복사
      • cp -rf [원본폴더] <복사될 폴더명> : 폴더 복사
  • Ubuntu 패키지 매니저 - apt

    • 필요성 : 패키지가 저장된 곳 관리, 설치, 삭제, 변경등을 일일히 관리하여 하기가 힘듦
    • apt 라고 치면 할 수 있는 행동들을 나열해줌 (대부분 sudo를 앞에 붙여 관리자 권한으로 실행하여야 함)
    • 자세한 코드는 해당 블로그 참고
  • 텍스트 에디터 nano

nano hello.java  # hello.java를 nano에서 엽니다.
nano # 그냥 실행할 수도 있습니다.
nano 파일이름 # 파일 열기
#^X y enter #저장 후 종료 

  • 사용권한

    ls -l
    • 위 코드를 통해 해당 위치에 있는 파일의 권한을 확인할 수 있다.
    • owner, group, other 마다 read, write, execute의 권한을 설정 할 수 있다.
      ex) d/rwx/rwx/rwx 해당 폴더는 모두 모든 권한을 사용가능
      ex) -rwx--x--x 해당 파일은 owner는 모든 권한 행사, 나머지는 실행 권한만 있음.
    • 실행 권한 변경방법
    chmod a=rw hello.js # -rw-rw-rw-
    chmod 755 hello.js # -rwxr-xr-x
  • 환경변수

    • 필요성 : 한 파일에서 다른 파일에 있는 데이터를 불러와서 사용할 때, 컴퓨터마다 서로의 위치가 다를 수 있으므로
    • 환경변수 : 환경에 따라 프로그램의 동작에 영향을 줄 수 있는 값들
  • Linux에서 환경변수 적용하기

    • 환경변수 임시 적용
    hello=states # 지역 환경변수 설정
    export class="is gooda" # 광역 환경변수 설정 # 띄어쓰기 사용시 ""으로 묶어주어야 함
    sudo chmod 777 /etc/profile # etc 디렉토리 내 profile 수정권한 부여
    nano /etc/profile # nano를 통해 profile 파일을 연다.
    source /etc/profile # 해당 내용을 입력해 변경 내용 저장
    • 환경변수 확인하기
    echo $hello # 전역 및 지역 환경변수의 개별 값 확인
    export # 생성된 환경변수의 이름과 값을 모두 확인
    export class="is gooda" # 환경변수 작성
    source /etc/profile # 해당 내용
profile
배운 것은 기록하자! / 오류 지적은 언제나 환영!

0개의 댓글