Linux_기초(Ubuntu)

개발 공부 기록·2021년 4월 14일
0

Linux

목록 보기
1/2
post-thumbnail

CLI 기초


  • CLI(Command-Line Interface) : 명령어를 입력해 컴퓨터를 조작하는 방식

  • GUI(Graphical User Interface) : 윈도우즈나 macOS, 또는 Linux에서 사용자가 화면을 통해 컴퓨터와 소통하는 방식

CLI와 GUI 작업 결과는 동일


터미널 실행하기


Ubuntu 기준 단축키 : Ctrl(컨트롤 키) + Alt(알트 키) + t(영문 t)


프롬프트(Prompt)


터미널에서 키보드의 입력을 확인하고 편집할 수 있는 한 줄의 공간을 프롬프트(Prompt)라고 한다.


CLI 기본 명령어



pwd: 현재 위치 확인하기

pwdprint working directory의 약자이고 여기서 말하는 디렉토리(directory)는 폴더라고도 한다.

pwd

CLI인 터미널에서는 간단하게 pwd를 프롬프트에 입력하고, Enter(엔터 키)를 누르면 현재 경로가 나온다.


mkdir: 새로운 폴더 생성하기

mkdir [생성할 폴더 이름]

mkdirmake directories의 약자로, 폴더를 만들라는 명령을 컴퓨터에 전달한다.


ls: 특정 폴더에 포함된 파일이나 폴더 확인하기

lslist의 약자로, 특정 폴더에 포함된 파일이나 하위 폴더의 리스트를 출력한다.

ls
ls -l // 폴더나 파일의 포맷을 전부 표현하라는 의미
ls -a // 숨어있는 폴더나 파일을 포함한 모든 항목을 터미널에 출력
ls -al 또는 ls -la // a와 l 합친 것을 출력

명령어를 이용해 폴더를 GUI의 탐색기로 실행하기

Ubuntu 기준

nautilus . // 현재 위치를 GUI로 실행해주는 명령어

cd: 폴더에 진입하기



cd [집입할 위치]

cdchange directory의 약자로, 프롬프트로 상호작용하는 폴더를 다른 폴더로 변경한다는 의미


touch: 파일 생성하기

touch [파일명].[확장자명]

cat: 파일의 내용을 터미널에 출력하기

cat [파일명].[확장자명]

rm: 폴더나 파일 삭제하기

rmremove의 약자로 폴더나 파일을 삭제할 때 쓰이는 명령어이다.

명령어 rm으로 삭제한 폴더나 파일은, 휴지통을 거치지않고 삭제된다.

rm [파일명].[확장자명] // 파일을 삭제할 떄

rm -rf [폴더명] // 폴더를 삭제할 때

옵션 r은 "recursive"를 뜻하고 폴더를 지울 때 사용한다.
옵션 f는 "force"를 뜻하고 질문을 받지 않고 지울 때 사용한다.


mv: 폴더나 파일의 이름을 변경, 또는 폴더나 파일의 위치 옮기기

mvmove의 약자로, 폴더나 파일을 이동할 때 사용

mv [현재 파일이나 폴더명] [바꿀 파일이나 폴더명] // 이름 변경할 때

mv [현재 파일이나 폴더명] [옮길 위치] // 위치 옮길 때

cp: 폴더나 파일을 복사하기

cpcopy의 약자로, 폴더나 파일을 복사할 때 사용

cp [원본 파일명] [복사할 파일명] // 파일 복사할 때

cp -rf [원본 폴더명] [복사할 폴더명] // 폴더 복사할 때

관리자 권한과 경로


절대 경로와 상대 경로

절대 경로는 특정 폴더나 파일이 루트폴더(/)로부터 어떤 폴더로 진입하는 경우 만날 수 있는지 나타낸다.

상대 경로는 특정 폴더 또는 파일의 위치를 현재 위치를 기준점으로 나타낸다.
현재 위치한 폴더는 점(.)으로 표현하고, 상위 폴더는 두 개의 점(..)으로 표현
./는 현재 폴더 아래이다. ../는 상위 폴더이다.


관리자(root) 권한

  • 주의. 관리자 영역을 실수로 변경하면, 운영체제(Operating System)이 먹통이될 수 있다.
    운영체제가 망가지면, 운영체제를 재설치해야할 수 있다.
whoami // 현재 사용자 확인
> [username]

whoami를 통해 확인할 수 있는 사용자는, 폴더의 형태로 존재

사용자 폴더의 경로(Path)는 ~/로 표시된다. 물결기호(~)는 루트폴더(/)로부터 사용자 폴더(username)까지의 경로를 축약한 형태


sudo: 관리자 권한을 획득하는 명령어




sudo는 "substitute user do" or "super user do"의 약자로 사용자 환경에서 관리자 권한을 일시적으로 획득하는 명령어

  • sudo는 권한 문제를 해결하는 솔루션이 아니다. 필요에 따라 현명하게 사용해야 한다.
    (가능한 user 권한으로 해결할 수 있어야함)
  • sudo는 한번만 인증하면 그 이후는 생략한다.

패키지와 패키지 매니저


리눅스의 패키지는 여러 파일을 모아 하나의 파일로 저장하고 있는 압축파일

  • 프로그램 파일
  • 프로그램 설치 파일
  • 프로그램 설치 설명서
  • 프로그램에 대한 정보를 담은 파일

패키지 매니저는 패키지의 설치, 변경, 삭제 등 관리를 편리하게 해주는 도구


Ubuntu 패키지 매니저 - apt


apt 명령어 사용


  • 패키지 목록 갱신: apt update (관리자 권한 필요)
    • 패키지를 다운로드받을 수 있는 여러 저장소의 최신 정보를 업데이트한다. 새로운 저장소를 추가하거나, 패키지를 설치하기 전, 최신 정보를 갱신한다.
    • 설치된 프로그램이 새로운 버전으로 변경되지 않는다.
  • 업그레이드 가능한 패키지 목록을 출력: apt list -—upgradable
  • 전체 패키지 업그레이드(버전 업): apt upgrade (관리자 권한 필요)
  • 특정 패키지만 업그레이드(버전 업): apt --only-upgrade install [패키지이름] (관리자 권한 필요)
  • 패키지 설치: apt install [패키지이름] (관리자 권한 필요)
  • 설치된 패키지 보기: apt list --installed
  • 패키지 검색: apt search [검색어]
  • 패키지 정보 확인: apt show [패키지이름]
  • 패키지 삭제: apt remove [패키지이름] (관리자 권한 필요)

관리자 권한 사용


패키지 설치/삭제 등의 작업을 진행할 때 sudo 명령어를 이용해서 관리자 권한을 획득

sudo apt install wget // 예시) wget은 URL을 통해 파일을 다운로드 받는 프로그램

혹시 무언가 잘못되고 있다고 느껴지는 경우
너무 시간이 오래 걸리거나, 뭔가 과정 중에 예상치 못하게 멈춰있는 경우
Ctrl + C 키는 작업을 취소하고, 터미널의 사용자 입력을 다시 되찾아 온다.


node.js 기초


런타임이란 프로그래밍 언어가 구동되는 환경, node.js는 JavasScript의 런타임이다.

node [파일명].js // JS파일 구동(실행)

nvm & node.js


nvmNode Version Manager의 약자로 node.js의 버전을 관리해주는 프로그램이다.

nvm --version // nvm 버전 확인

nvm install --lts // lts 버전 설치

nvm install [버전] // 원하는 버전 설치

node -v // node 버전 확인

nvm ls // 설치한 nvm 버전 리스트

nvm use [버전] // 이미 설치된 버전중 원하는 버전 사용

npm & package.json


npm

npmNode Package Manager의 약자로 node.js모듈 패키지 매니저이다.


package.json


검증된 코드(모듈)을 node.js에서는 npm 모듈이라하고 이에 대한 정보를 담아둔 곳이package.json이다.

package.jsonnpm 모듈을 활용하기 위해 해당 모듈에 대한 정보를 담은 파일
(즉, 프로젝트 전반에 관한 정보가 들어있다.)



*주의 package.json은 필요한 모듈만 보여준다.

프로그램을 실행시키기 위해 필요한 실제 모듈은 package.json의 적혀있는 것을 바탕으로 직접 설치하여 node_modules이라는 폴더에 저장된다.



1. package.json의 devDependencies


JSON 형식에서 에 적힌 것은 모듈 이름이고 버전이다.



2. package.json의 dependencies




3. package.json의 scripts 항목



profile
둔필승총(鈍筆勝聰) - 기억보다는 기록을

0개의 댓글