Terminal은 CLI(Command-Line Interface), 즉, 입력하는 글자와 출력되는 글자들로 컴퓨터와 소통하고 컨트롤하는 인터페이스이다. 키보드의 입력을 확인하고 편집하는 공간을 프롬프트라고 한다. Enter키를 이용해 입력을 확인한다.
pwd는 print working directory의 약자. 여기서 말하는 디렉토리(directory)는 폴더라고도 하며 명령어 pwd를 입력하면 컴퓨터는 현재 작업 중인 폴더의 위치를 출력한다.
make directories의 약자
새로운 폴더를 생성한다.
mkdir 파일이름
list의 약자
특정 폴더에 포한된 파일이나 하위 폴더의 리스트 출력
change directory의 약자 원하는 디렉토리에 진입할때 사용
cd 디렉토리명
위치한 디렉토리에 파일 생성
이름에 공백이나 특수문자가 있으면 \를 이용햐 적용가능
touch 파일명.확장자명
실행 결과를 파일로 저장
echo: 따라오는 뒤의 내용을 화면에 출력
echo 저장하고자 하는 내용 > 파일명.확장자
cat 파일명.확장자
파일의 내용을 터미널에 모두 출력
*명령어 cat은 이어지는 파일을 순서대로 읽고 터미널에 출력
rm 파일명.확장자
rm -rf 폴더명
위치 옮기기:
mv 파일/폴더명 옮기고자하는 폴더명/
이름 변경:
mv 파일/폴더명 바꿀 파일명.확장자
파일:
cp [원본 파일 이름] [복사할 파일 이름]
폴더:
cp -rf [원본 파일 이름] [복사할 파일 이름]
명령어에 덧붙혀 사용하는 옵션
사용자와 관리자
해킹과 각종 악성코드와 충돌들을 막기위해 관리자 권한을 두어 시스템을 변경할 수 있는 권리와 이용만 할 수 있는 권리를 분리했다.
절대 경로와 상대 경로
절대 경로: 절대 경로는 기준점(루트폴더(/))으로부터의 절대적인 위치를 나타낸다. 절대 경로는 특정 폴더나 파일이 루트 폴더로부터 어떤 폴더로 진입하는 경우 만날 수 있는지 나타낸다.
/Users/[username]/helloWorld/hello/
상대 경로: 상대 경로는 특정 폴더 또는 파일의 위치를 현재 위치를 기준점으로 나타낸다. 현재 위치한 폴더는 점(.)으로 표현, 상위 폴더는 두 개의 점(..)으로 표현한다.(/)는 폴더 내부를 의미 따라서, (./)는 현재 폴더 아래를 의미한다.(../)는 현재 폴더 위를 의미한다. 명령러의 공백을 뒤고 붙혀서 사용.
ex)
mv helloWorld.txt ../
: 상위 폴더로 이동시키기
(/)루트폴더는 관리자의 영역이므로 사용자 권한으로 할 수 있는 일이 없다.
관리자 경로 : (/)
whoami 명령어를 통해 사용자를 확인
등록된 사용자는 Users/ 에 폴더 형태로 존재, 확인할 수 있다.
사용자 경로 : (~) (물결 기호(~)는 루트폴더(/)로부터 사용자 폴더(username)까지의 경로를 축약한 형태)
명령어의 앞에 sudo명령어를 붙혀서 한시적 관리자 권한을 가지고 명령을 내릴 수 있다. 이때 매번 비밀번호를 묻는다.
sudo mkdir sudoMkdir
AWS(Amazon Web Service)와 같은 원격 서버 환경에서 원격으로 텍스트 파일을 편집해야 하는 경우 사용할 수 있는 텍스트 에디터가 있다. 그중 nano가있다.
실행:
nano hello.java # hello.java를 nano에서 열때
nano # 그냥 실행
nano 파일이름 # 해당파일을 nano에서 열기
^O WriteOut
를 입력해 변경사항을 저장할 수 있다.
리눅스 운영체제의 패키지와 패키지 매니저는 포장된 상품과 온라인 쇼핑몰 같은 역할을 한다.
패키지는 여러 파일이 담겨있는 하나의 상자로 윈도우 운영체제에서 '알집'이나 '반디집'이란 프로그램처럼 여러 파일을 모아 하나의 파일로 만들 수 있다. 이렇게 여러 파일을 담고 있는 하나의 파일을 '압축 파일'이라고 한다.
패키지에 들어있는 기본 파일 구성:
프로그램 파일
프로그램 설치 파일
프로그램 설치 설명서
프로그램에 대한 정보를 담은 파일
패키지 매니저는 패키지의 설치, 변경, 삭제 등 관리를 편리하게 해주는 도구로 모든 패키지의 저장소 위치를 저장하고 있다. 사용자가 패키지 매니저에게 특정 프로그램의 설치를 요청하면, 패키지 매니저는 패키지가 저장된 위치에서 패키지를 다운로드해 설치 프로그램을 실행한다.
맥 전용 패키지 매니저 brew를 사용할 수 있다.
ls -l 을 통해 해당 파일의 권한을 확인할 수 있다.
환경변수는 프로그램의 동작에 영향을 미치는 값들을 의미
환경에 따라 프로그램의 동작에 영향을 줄 수 있는 값들을 의미
지역 환경변수: 등호 표시(Equal sign, =)를 이용하여 선어(앞뒤에는 반드시 공백이 없어야 함)
만약, 저장하고자 하는 변수에 공백이 존재할 경우 값 전체를 따옴표로 감싸주어야 한다. hello=codestates
hello="codestates is good"
전역 환경변수: 명령어 export를 이용
export hello=codestates
echo 명령어를 이용해 설정한 환경변수들을 확인할 수 있다.
이때 환경변수 앞에 $사인을 입력하는데 이는 뒤의 문자열이 환경변수라는 의미를 터미널에 전달한다.
echo $hello
개발에 있어서 리눅스 체제의 필요성과 CLI 인터페이스를 사용하는 연습을 할 수 있었다.
내일 배울 것들
#Git 기초
1. 버전 관리 시스템 - Git
2. Git Workflow
3. Pair - Simple Git Workflow
4. Checkpoint - Git Command