-
Linux / GitFE 2023. 4. 24. 17:36
CLI 명령어
터미널 단축키: command(커맨드 키, ⌘) + Space(스페이스 키)
터미널 : CLI (Command-Line interface) 입력하는 글자와 출력되는 글자로 컴퓨터와 소통할 수 있으며 컴퓨터가 출력하는 글자를 읽을 수 있어야 한다
프롬프트 (Prompt) : 키보드의 입력을 확인하고 편집할 수 있는 한 줄의 공간
pwd : 현재 위치 확인하기 (프롬프트에 pwd를 입력하고 엔터키를 누르면 확인 할 수 있음)
mkdir : 새로운 폴더 생성하기 (생성할 폴더의 이름을 함께 입력해야 함. 명령어와 폴더의 이름은 스페이스키로 구분)
mkdir helloWorld
ls : 특정 폴더에 포함된 파일이나 폴더 확인하기
➡️ 명령어 ls 에는 자주 사용하는 옵션 l과 a가 있다. CLI에서 특정 명령어의 옵션을 사용하는 경우에는 -를 이용해 옵션을 입력했다고 컴퓨터에 전달한다.
- ls -l
l은 폴더나 파일의 포맷을 전부 표현. - ls -a
a는 "all" 이라는 의미. 숨겨있는 폴더나 파일을 포함한 모든 항목을 터미널에 출력 - ls -al 또는 ls -la
- (대시 dash)는 뒤에 오는 옵션의 순서 기능에 영향을 미치지 않음
cd : 폴더에 진입하기 (프롬프트로 상호작용하는 폴더를 다른 폴더로 변경한다는 의미이다. 명령어 pwd를 사용해 현재 위치를 확인하고 명령어 ls를 이용해 생성한 폴더를 확인 후 명령어 cd를 이용해 진입한다. 명령어 pwd를 이용해 현재위치를 확인
touch : 파일 생성하기
touch hi.txt
cat : 파일의 내용을 터미널에 출력하기 (CLI으로 만든 폴더와 파일을 GUI로 동일하게 확인할 수 있음. 반대로 GUI에서 변경한 내용을 CLI에서 확인. 텍스트 편집기로 작성한 것을 CLI에서 확인 후 간단한 명령어로 파일의 내용을 확인할 수 있다
rm : 폴더나 파일 삭제하기 (휴지통을 거치지 않음. 폴더를 삭제하려면 -rf)
mv : 폴더나 파일의 이름을 변경 또는 폴더나 파일의 위치 옮기기
cp : 폴더나 파일을 복사하기 (프롬프트에 cp [원본 파일 이름] [복사할 파일 이름] 입력)
CLI에서 . 현재 폴더를 나타내고 .. 은 현재 폴더 (.) 를 기준으로 앞에 . 이 하나 더 붙는다. 이렇게 만들어진 ..은 현재 폴더보다 앞에 있는 폴더를 가리킨다.
관리자 권한과 경로
절대경로 : 루트 폴더(/)에 있는 폴더로 경로를 확인할 수 있다. (/Users/[username]/helloWorld/hello/)
상대경로 : 특정 폴더 또는 파일의 위치를 현재 위치를 기준점으로 나타냄 (현재 위치한 폴더는 .으로 표현, 상위 폴더는 두 개의 점 ..으로 표현 그리고 명령어 ls를 통해 확인되는 폴더나 파일은 상대 경로로써 ./ 을 붙여 표현할 수 있음 . 은 현재 폴더, / 는 폴더 내부이므로 ./ 는 "현재 폴더 아래의" 라는 뜻)
관리자(Root) 권한 : 절대경로의 기준점인 루트 폴더 (/)는 Linux의 관리자 영역이다. 일반 사용자의 권한으로는 어떤 폴더나 파일도 생성, 변경, 삭제할 수 없다. 관리자 영역을 실수로 변경하면 운영체제가 먹통이 될 수 있으므로 주의해야한다. 사용자와 관리자를 명확히 분리하여 사용자의 실수로 발생할 수 있는 시스템 에러로부터 운영체제를 보호한다.
whoami : 사용자 권한으로는 할 수 있는 일이 없으므로 로그인 된 사용자를 확인하는 명령어
sudo : 관리자 권한을 획득하는 명령어
nano <file_name > : nano 에디터로 파일열기
패캐지와 패키지 매니저
brew 명령어 이용하기
- brew 자체 업데이트: brew update
- 업데이트 필요한 파일 조회: brew outdated
- 프로그램 업그레이드(업데이트): brew upgrade 프로그램 이름
- 프로그램 검색: brew search 검색어
- 프로그램 정보 확인: brew info 프로그램 이름
- 프로그램 설치: brew install 프로그램 이름
- 프로그램 삭제: brew uninstall 프로그램 이름
- 설치된 프로그램 보기: brew list
Node.js
nvm(Node Version Manager)
npm 모듈을 활용하기 위해 해당 모듈에 대한 정보를 담은 파일 즉, 프로젝트 전반에 관한 정보가 들어있음
package.json : 이 프로그램을 실행시키기 위해 필요한 모듈들이 무엇인지, 프로그램을 실행시키는 방법, 프로그램을 테스트하는 방법등이 명시되어 있음
devDependencies : 프로그램 실행과 관계 없는 오로지 개발을 위해 필요한 dependency(의존성 모듈)
Git
버전 관리를 사용하는 이유
- 파일이 변경되면 변경 이력을 저장할 수 있음
- 이전 버전으로 돌아갈 수 있음
- 어떤 변경 사항이 발생했는지 알아보기 쉬움
- 협업하기 좋음
- 백업용
오픈 소스는 누구나 자유롭게 해당 기능을 추가하고 개선할 수 있으며 이것을 기여하다(contribute)라고 한다.
fork : react 원격 저장소를 내 원격 저장소로 가지고 오는 작업
clone : 나의 remote repository에 react 코드를 옮겨와 내 컴퓨터로 가져오는 작업
push : 변경된 내용을 commit을 통해 저장한 뒤 remote repository에 반대로 올려주는 작업, local repository에 기록해 놓은 commiy을 remote repository에 업로드 할 수 있음
pull : remote repository에서 변경 사항이 있을 때 local repository로 가져오는 작업
오늘 다 처음보는 단어들.. 천천히 하나하나 보면서 했는데도 오류 때문에 애먹었다
깃도 뭐가 뭔지 어디에 뭐가 있는지 내가 과제를 잘 올린건지도 모르겠다
깊게 배운 건 아니지만 저번주에 배운 것 보다 따라갈 수 있어서 다행이었다.. (조금)
터미널에서 오류뜨고 내맘대로 안 돼서 답답했지만 찾아보면서 쳐보는게 재밌었다!
'FE' 카테고리의 다른 글
객체 (0) 2023.04.26 배열 (0) 2023.04.25 계산기 구현하기 (0) 2023.04.21 JavaScript 기초3 (0) 2023.04.20 JavaScript 기초2 (1) 2023.04.19 - ls -l