CLI (Command-Line Interface) : 명령어를 입력해 컴퓨터를 조작하는 방식
GUI (Graphical User Interface) : 사용자가 화면을 통해 컴퓨터와 소통하는 방식
대량의 서버 컴퓨터를 설치해야 하는 서비스를 보면, 각각 I/O를 부착하는 일은 불가능에 가깝다.
CLI를 통해 서버 컴퓨터로 접속을 요청하면, 서버 컴퓨터는 요청한 컴퓨터의 출력소스(모니터)를 이용하기 때문에 자신의 모니터로 서버 컴퓨터와 소통할 수 있다. 매우 효율적인 방법이기 때문에 수많은 현직 개발자가 CLI로 서버 컴퓨터와 소통한다. 그리고 대부분의 서버 컴퓨터는 무료인 Linux운영체제가 설치되어 있다. 그렇기 때문에 Linux 환경에서 CLI를 이용하는 방법을 개발자라면 꼭! 학습해야 한다.
r
은 "recursive"를 뜻하고 폴더를 지울 때 사용한다.f
는 "force"를 뜻하며 질문을 받지 않고 삭제할 때 사용한다.-h
또는 --help
와 같은 옵션으로 확인이 가능함.
pwd
: 현재 위치 확인하기
mkdir 폴더명
: 새로운 폴더 생성
ls
: 특정 폴더에 포함된 파일이나 폴더 확인
ls -l
: 폴더나 파일의 포맷을 전부 출력
ls -a
: "all"의 의미. 숨어있는 폴더나 파일을 포함한 모든 항목을 출력
ls -al
또는ls -la
: 위의l
과a
옵션을 전부 출력
nautilus
: 터미널의 현재 위치를 GUI의 탐색기로 실행
cd 폴더명
: 폴더에 진입
touch 파일명.확장자
: 파일 생성
cat
: 파일의 내용을 터미널에 출력
rm
: 단일 파일 삭제
rm -rf
: 질문 없이(옵션f
) 폴더 삭제(옵션r
)
mv [폴더나 파일 이름] [변경할 이름 or 도착폴더의 이름]
: 폴더나 파일의 이름 변경, 또는 폴더나 파일 위치 옮기기
cp [원본 파일 이름] [복사될 파일 이름]
: 폴더나 파일 복사 (폴더 복사시 r과 f옵션 사용)
whoami
: 현재 로그인된 사용자명 확인 (폴더 형태로 존재)
sudo
: 관리자 권한을 획득하는 명령어
code
: GUI 에디터인 VS Code 실행
nano
: 텍스트 에디터인 nano 실행
nano
: 프로그램 실행 / nano hello.js
: hello.js를 nano에서 열기Ctrl + R
: 파일 열기 / Ctrl + T
: 화살표키로 파일 경로 탐색 후 파일 및 디렉토리 불러오기Ctrl + X
: 프로그램 종료. 변경사항이 있을 경우 저장할지 물어봄. Y나 N으로 결정Ctrl + O
: nano를 종료하지 않고 파일이 저장됨. save 기능오늘의 한 줄
CLI를 다루기 시작하니 뭔가 찐개발자가 된 것 같은 기분이 든다ㅎㅎ 능숙하게 다룰 수 있을 때까지 연습하자!!