Linux/Git 기초

전예훈·2023년 2월 24일
0

Linux 학습하기전 터미널을 사용하기 위한 기본적인 명령어 정리

프롬프트(prompt)

키보드의 입력을 확인하고 편집할 수 있는 한 줄의 공간을 말한다.
입력한 명령을 실행하려면 enter 키를 누르면 됩니다.

pwd

현재 위치를 확인하는 용도입니다.

mkdir

새로운 폴더를 생성하는 것이다.

ls

특정 폴더에 포함된 파일이나 폴더를 확인 하는 용도이다.

  • ls-l
  • ls -a
  • ls -al or ls -la
    명령어 ls 의 옵션 a 는 all의 의미입니다. 숨어있는 폴더나 파일을 포함한 모든 항목을 터미널에 출력합니다.

cd

폴더에 진입하는 명령어

cd hello -> hello 라는 폴더로 진입하는것

 //'#' 기호는 설명을 위해 사용되었습니다.
 //pwd를 이용해 현재 위치를 확인합니다.
pwd
 //[사용자명]은 처음 OS를 설치할 때 입력한 사용자 이름입니다.
 //(Ubuntu) /home/[사용자명]
 //(macOS) /Users/[사용자명]

 //ls를 이용해 현재 위치의 모든 폴더와 파일을 확인합니다.
ls
 //cd를 이용해 폴더 helloWorld로 진입합니다.
cd helloWorld
//pwd를 이용해 현재 위치를 확인합니다.
pwd

touch

파일을 생성하는 명령어

cat

파일의 내용을 터미널에 출력하는 명령어

rm

폴더를 삭제 할때 사용하는 명령어

  • rm 은 파일을 삭제할때
  • rm -rf 는 폴더를 삭제할때 사용하는 명령어

명령어 rm은 단일 파일을 삭제할 수 있다.
만약 폴더를 삭제하려면 옵션을 이용해야 한다. 사용할 수 있는 옵션은 r과 f이다.
옵션 r은 "recursive"를 뜻하고, 옵션 f는 "force"를 뜻한다.
옵션 r은 폴더를 지울 때 사용하고, 옵션 f는 질문을 받지 않고 지울 때 사용한다.

mv

폴더나 파일의 이름을 변경 또는 폴더나 파일의 위치 옮기는 명령어

move 의 약자로, 폴더나 파일을 이동할때 사용하고 폴더나 파일의 이름을 변경할 수잇다.

mv [폴더나 파일의 이름][도착 폴더의 이름]
mv [변경할 폴더나 파일의 이름][변경하고자하는 파일의 이름]

cp

폴더나 파일을 복사하는 명령어

  • 현재 위치는 ~/helloWorld/hello/bye/입니다. 명령어 pwd로 확인하면, 물결 표시(~)를 대신해 운영체제에 따라 /home/username 또는 /Users/username가 나타납니다.

  • 명령어 pwd를 입력하면, /home/[username]/helloWorld/hello/bye/(Ubuntu) 또는 /Users/[username]/helloWorld/hello/bye/(macOS)가 나타납니다.

명령어 cp는 copy의 약자로, 폴더나 파일을 복사할 때 사용합니다. 먼저, 파일을 복사합니다. 파일을 복사하기 위해 명령어 cp를 사용하는 경우에는, cp [원본 파일 이름][복사할 파일 이름]을 프롬프트에 입력합니다.


// '#' 기호는 설명을 위해 사용하였습니다.
ls
// helloWorld.txt 가 출력됩니다.
cp helloWorld.txt hiComputer.txt
ls
// helloWorld.txt hiComputer.txt 가 출력됩니다.

절대 경로와 상대경로

절대 경로: 기준점으로부터의 절대적인 위치를 나타내는데, 이 기준점을 루트폴더(/)라고 한다. 특정 폴더나 파일이 루트폴더로부터 어떤 폴더로 진입하는 경우 만날 수 있는지 나타낸다.

/Users/[usersname]/[폴더이름]

상대 경로: 특정 폴더 또는 파일의 위치를 현재 위치를 기준점으로 나타낸다. 현재 위치한 폴더는 점(.)으로 표현하고, 상위 폴더는 두 개의 점(..)으로 표현한다.
(.)은 현재 폴더를, 슬래시(/)는 폴더 내부를 나타낸다. 따라서 ./는 "현재 폴더 아래의"라는 뜻이다.


짝수 생성기

이번시간에는 브라우저가 아닌 node.js 환경에서 javascript를 실행하고 npm 패키지를 직접사용해 짝수생성기를 만들어 보겠습니다.

디렉토리 구성 확인 및 프로그램 실행

터미널에서 디렉토리를 열고 과제를 다운받고 다운받은 위치에서 압축을 풀고나서
cli로 과제 디렉토리로 이동해 명령어 node index.js를 입력하면 에러가 발생한다.

Error: Cannot find module 'range'

위 에러는 range 모듈을 찾을수 없다는 뜻으로 range 모듈을 설치하면 해결됩니다.

테스트 실행 (npm run test)

package.json 파일에서는 scipts 항목이 존재하고 npm 스크립트라고 불리는 CLI 명령어 모음집이 존재합니다.

스크립트는
start : 현재는 빈 칸이며, 이 칸은 직접 작성하여 index.js를 실행
test : 해당 스프린트에서 작성할 함수가 제대로 작성되었는지 확인하는 CLI 명령어
report : 테스트에 대한 리포트를 생성합니다.
submit : 코드스테이츠 과제 제출 매니저로 과제를 제출합니다.

npm run test를 실행하여, 결과를 확인합니다. 마치 코플릿과 같이 테스트가 실행되고 결과에 대한 확인이 가능합니다. 코플릿과 마찬가지로 전부 해당 테스트를 통과해야 합니다.

getListMultiplesOfTwo 함수 구현

  • index.js는 getListMultiplesOfTwo.js 파일을 읽어들여서 문구와 함께 CLI 창에 띄우는 역할을 하며,
  • 실제 함수는 getListMultiplesOfTwo.js 파일에 작성해야한다.
  • 참고 사이트 : range - npm
const range = require('range'); // range 모듈을 불러옵니다

function getListMultiplesOfTwo(upTo) {
  return range.range(2,upTo+2,2);
}

module.exports = getListMultiplesOfTwo;

//upto 에 +2를 하지않으면 98에서 끝나버린다.
// range 모듈 사용 형식은 range(a,b,step) 형식이며 
//함수 사용시 파라미터 값을 return 값으로 출력해야한다.
 "scripts": {
    "start": "node index.js",
    "test": "mocha getListMultiplesOfTwo.test.js --timeout 50000 --reporter mocha-multi-reporters --reporter-options configFile=multi-reporters.json",
    "report": "mocha getListMultiplesOfTwo.test.js --sort --reporter @mochajs/json-file-reporter",
    "submit": "codestates"
  },

위 함수 start 가 비워져있었는데 node index.js 를 입력해 주어야만 코드스테이에서 준 문제를 풀수있다.

*완성된 코드

profile
더욱더 QA스럽게!

0개의 댓글