명령줄 인터페이스(CLI, Command-Line Interface)
- 명령어로 컴퓨터를 제어하는 방식으로, GUI에 비해 높은 안정성과 빠른 속도를 가짐
GUI(그래픽 사용자 인터페이스) : 평소 컴퓨터를 사용할 때 적용되는 컴퓨터 제어 방식
- GUI가 할 수 있는 모든 작업은 CLI로 할 수 있음
- AWS와 같은 서버 컴퓨터의 대부분은 Linux 운영체제가 설치되어 있기 때문에, 서버 컴퓨터와 원격으로 소통할 개발자들에겐 CLI 이용이 필수적임
CLI 기본 명령어 - 리눅스 명령어 모음 BEST 50
- pwd : 현재 경로 출력(print working directory)
- mkdir : 새로운 폴더 생성(make directories)
- ls : 특정 폴더에 포함된 파일이나 폴더 확인하기(list)
특정 명령어의 옵션 사용 : 하이픈(-) 입력
ls -a : 숨어있는 폴더나 파일을 포함한 모든 항목 출력(all)
ls -l : 폴더나 파일의 포맷 표현 (사용 권한)
- cd : 폴더에 진입(change directory)
cd .. : 상위 폴더로 이동
cd ~ : 홈 디렉토리로 이동
- touch : 파일 생성
- > : 실행 결과를 파일로 저장하기 e.g. ls > ls.txt → ls 명령어의 실행 결과를 ls.txt에 저장
- echo : 화면에 텍스트 출력 e.g. echo hello → hello
- cat : 파일의 모든 내용을 터미널에 출력(매우 비효율적, 대신 사용할 수 있는 명령어 존재)
head 명령어, tail 명령어, more 명령어, less 명령어
- rm : 폴더나 파일 삭제(remove)
CLI에서 삭제된 파일은 휴지통에 가지 않고 즉시 삭제되므로 주의할 것(^C(Ctrl + C) : 프로세스 종료)
폴더 삭제는 -rf 옵션 사용(recursive : 특정 행동 반복, force : 강제로 행동)
- mv : 폴더나 파일 위치 옮기기/이름 변경(move)
파일 옮기기 - mv [옮길 폴더/파일 이름] [도착 폴더 이름]
이름 변경 - mv [기존 폴더/파일 이름] [바꿀 폴더/파일 이름]
- cp : 폴더나 파일 복사(copy)
cp [원본 폴더/파일 이름] [복사할 폴더/파일 이름]
폴더 복사는 -rf 옵션 사용
- 명령어 -h(또는 --help) : 명령어의 옵션 확인
관리자 권한
- 관리자 권한을 만든 이유 : 악성코드 설치를 막을 수 있는 안전장치 역할, 프로그램 충돌 방지
- sudo 명령어 : 관리자 권한 일시적 획득
사용자가 새로운 프로그램을 설치/변경/삭제할 때는 권리자 권한이 필요
sudo 명령어는 리눅스 계정을 생성할 때 만든 비밀번호를 입력해야 명령 가능(비밀번호를 타이핑해도 화면에 출력되지 않지만, 정상적으로 입력됨)
경로
- 절대 경로 : 기준점(루트 폴더, /)으로부터의 절대적인 위치
- 상대 경로 : 현재 위치로부터의 위치. 현재 위치한 폴더는 점(.)으로, 상위 폴더는 두 개의 점(..)으로 표현
e.g. ./hi : 현재 폴더(.) 아래의(/) hi 폴더로 진입
텍스트 에디터 nano
- CLI 환경에서 가장 사용하기 쉬운 에디터
- AWS와 같은 원격 서버 환경에서 원격으로 텍스트 파일을 편집해야 할 상황이 생김
- nano 명령어를 통해 실행 e.g. nano hello.java : hello.java를 nano에서 실행
'백엔드 개발자 공부 > Linux 기초' 카테고리의 다른 글
[Linux] 환경변수 (0) | 2022.08.26 |
---|---|
[Linux] 사용 권한 (0) | 2022.08.26 |
[Linux] Ubuntu 패키지 매니저 apt (0) | 2022.08.26 |