2.24 Linux 기초
Command-Line Interface
CLI(Command-Line Interface)
키보드의 입력을 확인하고 편집할 수 있는 한 줄의 공간 프롬프트(Prompt)
pwd: 현재 위치 확인하기
mkdir: 새로운 폴더 생성하기
ls: 특정 폴더에 포함된 파일이나 폴더 확인하기
ls -l
ls -a
ls -al 또는 ls -la
* 위의 세 번째 예시에서, 옵션을 뜻하는 대쉬(dash, -) 뒤에 오는 옵션의 순서는 기능에 영향을 미치지 않습니다.
명령어 ls의 옵션 a는 "all"이라는 의미입니다. 숨어있는 폴더나 파일을 포함한 모든 항목을 터미널에 출력합니다.
cd: 폴더로 진입
touch: 파일 생성하기
cat: 파일의 내용을 터미널에 출력하기
rm: 폴더나 파일 삭제하기 remove
*단일 파일을 삭제할 수 있습니다. -rf 옵션을 사용해 폴더를 삭제
-옵션 r은 "recursive"를 뜻하고, 옵션 f는 "force"를 뜻합니다.
옵션 r은 폴더를 지울 때 사용하고, 옵션 f는 질문을 받지 않고 지울 때 사용합니다.
mv: 폴더나 파일의 이름을 변경, 또는 폴더나 파일의 위치 옮기기 move
cp: 폴더나 파일을 복사하기 copy
*cp [원본 파일 이름] [복사할 파일 이름]을 프롬프트에 입력합니다.
cp -rf
*CLI에서.은 현재 폴더를 나타냅니다.
..은 현재 폴더보다 앞에 있는 폴더를 가리킵니다.
Whoami 현재 로그인된 사용자 확인
sudo: 관리자 권한을 획득하는 명령어
nano: 나노 에디터 실행
다음 중 CLI에 대한 설명으로 옳지 않은 것을 고르세요. 정답 D
B. 터미널을 켜서 명령을 입력할 수 있는 한 줄의 공간을 프롬프트라고 합니다.
C. 만약 대규모의 서버를 운용해야 하는 경우, 각각의 컴퓨터마다 I/O소스(모니터, 키보드, 마우스 등)을 연결해야 한다면 비용도 많이 들 뿐 아니라, 조작하기도 불편할 것입니다. 그러나 CLI를 이용하면 자신의 I/O 소스를 통해 서버 컴퓨터를 조작하는 것이 가능합니다.
D. Windows는 GUI의 대표주자라고 할 수 있습니다. 대표적인 CLI인 Linux는 대부분의 PC에서 무료로 사용할 수 있습니다.
문제 pwd 명령어를 사용하여 확인한 경로가 아래와 같을 때, codestates 폴더로 이동하기 위한 명령어로 옳지 않은 것을 고르세요. 답B
pwd
# /Users/kimcoding/Downloads/codestates/unit8/chapter1-4
A.cd ./../../../codestates
보기A: 현재 위치를 의미하는 상대 경로 ./에 이어 상위 폴더를 의미하는 상대 경로 ../를 총 3번 사용했으므로 Downloads 폴더로 이동합니다. 그 후 Downloads에 있는 하위 폴더인 /codestates/로 이동하고 있습니다.
보기B: ../를 한 번 사용한 후 ./을 세 번 사용하면 현재 위치는 unit8 폴더가 됩니다. 해당 위치에서 /Downloads/codestates/를 입력해도 상위 폴더로는 이동할 수 없습니다.따라서 틀린 보기입니다.
보기C: ~는 루트 폴더로부터 사용자 폴더까지의 경로(/Users/[username]/)를 축약한 형태입니다. 차례대로 /Downloads/codestates/unit8/로 이동한 후, ../를 입력하였으므로 상위 폴더인 codestates 폴더로 이동합니다.
보기D: ./를 한 번, ../를 두 번 사용하였으므로 codestates 폴더로 이동합니다.
문제 package.json에 대한 설명으로 옳지 않은 것을 고르세요. 정답 B
A.package.json에는 해당 프로그램을 실행시키기 위한 모듈의 정보, 실행 방법, 테스트 하는 방법 등이 명시되어 있다.
B.프로젝트 코드를 전달할 때 package.json에 포함되어 있는 모듈을 모두 전달해 주어야 한다
package.json에는 해당 프로그램을 실행시키기 위한 모듈의 정보, 실행 방법, 테스트 방법 등이 명시되어 있습니다. 프로젝트 코드를 전달할 때, 모든 모듈을 전달할 필요 없이 package.json을 전달하면, 전달 받은 사람은 npm install 명령어로 package.json에 포함되어 있는 모듈을 설치할 수 있습니다. 과제 제출 방법에서 확인했듯, 코드스테이츠의 과제를 제출하기 위한 명령어는 npm run submit입니다.
A.fork: 오픈 소스 코드가 업로드 되어 있는 원격 저장소(Remote Repository)에서 나의 원격 저장소로 가지고 오는 과정
B.clone: 원격 저장소에서 내 컴퓨터(Local Repository)로 가지고 오는 과정