CLI 기본 명령어
✔ 개요
- 리눅스 터미널을 실행할 수 있다.
- CLI를 이용한 작업과 GUI를 이용한 작업이 동일함을 이해할 수 있다.
- GUI의 변경사항을 CLI로 확인할 수 있다.
- CLI의 변경사항을 GUI로 확인할 수 있다.
- 리눅스 터미널에서 기본적인 명령어를 사용할 수 있다.
- pwd: 현재 위치를 확인하는 명령어
- mkdir: 새로운 폴더를 생성하는 명령어
- ls: 폴더나 파일의 목록을 출력하는 명령어
- nautilus (Ubuntu), open (macOS): 현재 폴더를 파일 탐색기로 여는 명령어
- cd: 폴더에 진입하는 명령어
- touch: 새로운 파일을 생성하는 명령어
- cat: 파일의 내용을 터미널에 출력하는 명령어
- rm: 폴더나 파일을 삭제하는 명령어
- mv: 폴더나 파일의 위치를 이동하거나, 이름을 변경하는 명령어
- cp: 폴더나 파일을 복사하는 명령어
- sudo: 관리자 권한을 이해할 수 있다.
- 명령어를 사용할 때, 등장하는 키워드에 대해 이해할 수 있다.
- /: 루트 디렉토리
- ~: 홈 디렉토리
- 절대 경로와 상대 경로의 차이를 이해할 수 있다.
- 절대 경로의 시작이 루트 디렉토리(/)인 것을 이해할 수 있다.
- 상대 경로의 시작이 현재 디렉토리(.)인 것을 이해할 수 있다.
- 텍스트 에디터 nano를 이용해 파일을 수정하고, 저장할 수 있다.
CLI를 이용한 작업과 GUI를 이용한 작업이 동일함을 이해할 수 있다
CLI(Command-Line Interface) : 입력하는 글자와 출력되는 글자로 컴퓨터와 소통한다.
프롬프트 : 키보드의 입력을 확인하고 편집할 수 있는 한 줄의 공간
리눅스 터미널에서 기본적인 명령어를 사용할 수 있다
pwd: 현재 위치를 확인하는 명령어
mkdir: 새로운 폴더를 생성하는 명령어
ex) mkdir jjonge => jjonge라는 폴더를 생성한다
ls: 폴더나 파일의 목록을 출력하는 명령어
nautilus (Ubuntu), open (macOS): 현재 폴더를 파일 탐색기로 여는 명령어
cd: 폴더에 진입하는 명령어
ex) cd jjonge => jjonge폴더에 진입한다.
touch: 새로운 파일을 생성하는 명령어
ex) touch jjonge.txt => jjonge라는 텍스트파일(0바이트)을 만든다.
cat: 파일의 내용을 터미널에 출력하는 명령어
ex) cat jjonge.txt => jjonge에 적혀있는 파일의 내용을 출력한다.
rm: 폴더나 파일을 삭제하는 명령어
ex) rm jjonge => jjonge폴더를 삭제한다.
mv: 폴더나 파일의 위치를 이동하거나, 이름을 변경하는 명령어
ex) mv jjonge.txt jjonge/ => jjonge.txt파일을 jjonge폴더로 옮긴다.
mv jjonge.txt jjong33.txt => jjonge라는 이름의 txt를 jjong33으로 바꾼다.
cp: 폴더나 파일을 복사하는 명령어 - cp [원본 파일 이름] [복사할 파일 이름]
ex) cp jjonge.txt jjonge123.txt => jjonge.txt의 내용을 가진 jjonge123.txt를 만든다.
sudo: 관리자 권한을 이해할 수 있다.
명령어를 사용할 때, 등장하는 키워드에 대해 이해할 수 있다.
사용자 폴더의 경로(Path)는 ~/로 표시됩니다.
물결 기호(~)는 루트폴더(/)로부터 사용자 폴더(username)까지의 경로를 축약한 형태입니다.
절대 경로와 상대 경로의 차이를 이해할 수 있다.
상대적인 위치를 나타내는 상대 경로로 나뉩니다. 절대 경로는 기준점으로부터의 절대적인 위치를 나타내는데, 이 기준점을 루트폴더(/)라고 합니다. 정리하면, 절대 경로는 특정 폴더나 파일이 루트 폴더로부터 어떤 폴더로 진입하는 경우 만날 수 있는지 나타냅니다.
Ubuntu
/home/[username]/helloWorld/hello/라는 경로를 예시로 살펴보겠습니다. 루트폴더(/)에는 폴더 home이 있습니다. 폴더 home으로 진입하면, 폴더 username을 확인할 수 있습니다. 폴더 username에 진입하면, 폴더 helloWorld가 있고, 폴더 helloWorld에 진입하면 폴더 hello를 발견할 수 있습니다. 이 과정을 한 줄로 줄여놓은 구문(/home/[username]/helloWorld/hello/)이 절대 경로입니다.
텍스트 에디터 nano를 이용해 파일을 수정하고, 저장할 수 있다.
nano [파일 이름]을 사용해서 열 수 있다.
패키지와 패키지 매니저
✔ 개요
- 패키지와 패키지 매니저 필요성을 이해할 수 있다.
- 각 운영체제에 맞는 패키지 매니저를 사용할 수 있다.
- MacOS 운영체제에서 터미널을 통해 Homebrew 패키지 매니저를 설치하고 패키지를 관리하는 명령어를 사용할 수 있다.
- brew update: 패키지의 업데이트 여부 확인
- brew outdated: 업데이트 필요한 파일 조회
- brew upgrade: 프로그램 업그레이드
- brew info: 프로그램의 정보 확인
- brew install: 프로그램 설치
- brew list: 설치된 프로그램 목록 보기
- brew uninstall: 프로그램 삭제
- Linux Ubuntu 운영체제에서 사용하는 apt 패키지 매니저에 대해 알고, 명령어를 통해 패키지를 관리할 수 있다.
- apt update: 패키지의 업데이트 여부 확인
- apt list --upgradable: 업데이트 필요한 파일 조회
- apt upgrade: 프로그램 업그레이드
- apt show: 프로그램의 정보 확인
- apt install: 프로그램 설치
- apt list --installed: 설치된 프로그램 목록 보기
- apt remove: 프로그램 삭제
- apt search : 패키지 검색
- MacOS 운영체제에서 터미널을 통해 Homebrew 패키지 매니저를 설치하고 패키지를 관리하는 명령어를 사용할 수 있다.
사용권한
✔ 개요
- 사용 권한과 소유자에 대해 이해하고, 사용 권한을 변경할 수 있다.
- 파일의 소유자와 파일에 적용된 사용 권한을 확인하고 이해할 수 있다. ls -l
- 파일에 적용된 사용 권한을 변경할 수 있다. chmod
권한
지금은 rwx 가 무엇을 뜻하는지 이해하면 충분합니다. 파일 hello.java의 권한은 rw-r--r-- 으로, 소유자는 읽기와 쓰기가 가능하고, 다른 사용자 그룹은 읽기만 가능하다는 의미입니다. 폴더 linux의 권한은 rwxr-xr-x 으로, 소유자는 읽기와 쓰기, 실행이 가능하고, 다른 사용자 그룹은 읽기와 실행만 가능합니다.
chmod
chmod로 권한을 변경하는 방식은 두 가지가 있다.
- 첫 번째는 더하기(+), 빼기(), 할당(=)과 액세서 유형을 표기해서 변경하는 Symbolic method입니다.
- 두 번째는 rwx를 3 bit로 해석하여, 숫자 3자리로 권한을 표기해서 변경하는 Absolute form입니다.
Symbolic method
액세스 클래스
u = user
g = group
o = other
a = all
명령어 chmod 뒤에 변경할 권한을 입력합니다. 액세스 클래스의 u, g, o, a를 변경할 조건에 따라 조합하여 입력하고, 연산자와 액세스 타입을 순서대로 입력합니다
ex) chmod g-r filename => group에 read를 뺀다
Absolute form
Absolute form은 숫자 7까지 나타내는 3 bits의 합으로 표기합니다.
read(r) = 4
write(w) = 2
Execute(x) = 1
만약, user는 rwx 를, group과 other은 r-- 로 권한을 변경하려고 한다면, 위 표에 나와있는 숫자의 합을 user, group, other 순으로 입력하여 사용합니다.
# u=rwx (4 + 2 + 1 = 7), go=r (4 + 0 + 0 = 4)
chmod 744 hello.java # -rwxr--r--
환경변수
✔ 개요
- 환경변수가 무엇인지 이해한다.
- 환경변수를 왜 사용하는지 이해한다.
- 전역 및 지역 환경변수의 차이를 이해한다.
- 환경변수를 임시적으로 적용할 수 있다.
- 환경변수를 영구적으로 적용할 수 있다.
- 환경변수의 개별값을 확인할 수 있다.
- 환경변수들의 목록을 확인할 수 있다.
환경변수란?
Linux에서 환경변수 설정하기
환경변수는 지역 환경변수와 전역 환경변수로 분류됩니다. 지역 환경변수는 환경변수를 생성한 특정 사용자만 사용할 수 있는 환경변수이며, 전역 환경변수는 모든 사용자가 사용할 수 있는 환경변수를 의미합니다. 각각은 다음과 같이 설정할 수 있습니다. 단, 아래의 방법은 환경변수를 임시적으로만 적용하는 방법이며, 터미널을 종료하면 환경변수가 자동으로 삭제됩니다.
지역환경변수
공백이 있으면 안된다.
hello=jjonge
전역 환경변수
공백이 있는 경우 따음표로 감싸준다.
export urclass="is good"
export bad_example=this is bad example
'TIL' 카테고리의 다른 글
페이지 레이아웃 및 웹 앱 화면 설계하기 (0) | 2022.04.28 |
---|---|
HTML, CSS (0) | 2022.04.28 |
마음가짐 및 학습전략 (0) | 2022.04.25 |