CLI 명령어

김소희·2023년 11월 30일
2

Linux란

Linux는 1991년 Linus Torvals가 개발한 운영체제이다. Unix 운영체제를 기반으로 만들어진 운영체제로 누구나 소스코드를 활용, 수정 및 재배포가 가능해서 지속적인 업그레이드가 이루어진다. 대표적인 리눅스 배포판으로는 Ubuntu, Fedora, Debian, CentOS 등이 있는데 나는 주로 Ubuntu를 사용한다.
Linux 안정성, 보안, 자유 및 사용자 지정 가능성 등의 특징으로 유명하며, 서버 환경부터 개인 컴퓨터, 모바일 기기, 임베디드 시스템까지 다양한 플랫폼에서 활용된다.
리눅스는 커멘드 라인을 기반으로 만들어져 있기 때문에 AWS배포시에도 CLI를 이용하여 작업을 해야한다.

CLI 명령어 모음

CLI(Command-Line Interface) 터미널에서 작업할때 유용한 명령어들을 정리했다.

pwd: 현재 위치 확인하기

mkdir: 새로운 폴더 생성하기 EX) mkdir helloWorld

ls: 특정 폴더에 포함된 파일이나 폴더 확인하기

cd: 폴더에 진입하기 EX) CD helloWorld

touch: 파일 생성하기 EX) touch hi.txt

〉: 실행 결과를 파일로 저장하기
EX) ls > ls.txt 를 입력하면 ls.txt에 ls 명령어의 실행 결과가 저장된다.

echo: echo 뒤의 내용을 화면에 출력해주는 역할
EX) echo hello 를 입력하면 hello가 출력된다.
EX) echo lissomeheena@gmail.com > hi.txt 를 입력하면 hi.txt에 lissomeheena@gmail.com가 저장된다.

cat: 파일의 내용을 터미널에 출력하기 EX) cat hi.txt
cat 명령어 대신 쓰는 다른 명령어들 :

rm: 폴더나 파일 삭제하기 EX) rm hi.txt

mv: 폴더나 파일의 이름을 변경, 또는 폴더나 파일의 위치 옮기기
EX) mv bye.txt bye/ 를 입력하면 "bye.txt"를 폴더 "bye"로 옮긴다.

cp: 폴더나 파일을 복사하기
EX) cp -rf bye hi를 입력하면 폴더 "bye"를 복사해 새로운 폴더 "hi"를 만듭니다.

chmod: 권한을 변경하는 명령어
EX) 파일에 대해 소유자에게 읽기, 쓰기, 실행 권한을 부여하려면: chmod u+rwx filename
EX) 그룹에 대해 읽기와 실행 권한을 부여하려면: chmod g+rx filename
EX) 기타 사용자에게 쓰기 권한을 제거하려면: chmod o-w filename
EX) 모든 사용자에게 읽기 권한을 부여하려면: chmod a+r filename

명령어 옵션 -r 과 -f:
r은 recursive의 약자로 특정 행동을 순환적으로 반복한다
f는 force의 약자로 어떤 행위를 강제한다

권한

리눅스에서 ls -l를 입력하면 다음과 같은 결과가 보여진다.

$ ls -l
total 3
drwxrwxr-x 2 user user 4096 Dec 1 10:00 dir1
-rw-rw-r-- 1 user user 12 Dec 1 09:45 file1.txt
-rw-rw-r-- 1 user user 24 Dec 1 09:45 file2.txt

시작이 d면 directory(폴더)이고, -면 not directory이다.
이후 3자리씩 owner, group, other에 대한 권한들을 보여준다.

r - read permission - 읽기 권한
w - write permission - 쓰기 권한
x - execute permission - 실행 권한

user:
user는 파일의 소유자이다. 기본적으로 파일을 만든 사람이 소유자가 된다. 따라서 user를 소유자라고 하기도 한다.

group:
group에는 여러 user가 포함될 수 있다. 그룹에 속한 모든 user는 파일에 대한 동일한 group 액세스 권한을 갖는다. 많은 사람이 파일에 액세스해야 하는 프로젝트가 있다고 가정한다면 각 user에게 일일이 권한을 할당하는 대신에 모든 user를 group에 추가하고, 파일에 group 권한을 할당할 수 있다.

other:
파일에 대한 액세스 권한이 있는 다른 user이다. 파일을 만들지 않은 다른 모든 user를 의미한다. 따라서 other 권한을 설정하면, 해당 권한을 global 권한 설정이라고 볼 수도 있다.

<참고자료>
Unix 계열 시스템에서 파일 권한 관리
Linux 기본명령어

profile
백엔드 자바 개발자 소희의 노트

0개의 댓글