IT/기초 지식

[Linux] Linux의 기초와 명령어 정리

개발자 두더지 2020. 5. 6. 23:12
728x90

1. Linux란?

 Linux란 Windows나 Mac과 같은 OS로 , 컴퓨터의 모든 하드웨어를 관리하는 소프트웨어이다. Linux는 리누스 토르발스에 의해 개발되었고, 1991년에 최초의 버전이 공개되었다. 당초에는 개인 컴퓨터용으로 만든 OS였으나, 현재는 슈퍼 컴퓨터, 서버, 임베디드 시스템(핸드폰이나 테레비 등) 등 다양한 시스템에서 사용되고 있다.

 자신이 개발한 Web어플리케이션 등을 공개하기 전, VPS(Virtual Private Server)을 빌리게 되는데, Linux는 VPS에 설치가능한 표준화된 OS이다. Linux는 개발에 있어서, 주로 서버의 용도로 사용된다. Linux에 대해서는 아래의 기사에서 자세히 설명하고 있으므로, 참고하길 바란다.

https://www.sejuku.net/blog/4948

 

【エンジニア監修】Linuxとは何か?初心者目線でやさしく解説してみた

こんにちは!侍エンジニア塾ブログ編集部の井上です。 毎月数百人のプログラミング学習者の相談にのる機会があるのですが、プログラミング初心者の方が最初につまずくのがLinuxへの理解です。この記事を見つけ

www.sejuku.net


2. 잘 사용하는 Linux 명령어

처음에는 Linux에서 잘 사용하는 명령어에 대해 소개하겠다. 여기에 소개된 명령어는 사용빈도가 높으므로, 실제 명령어를 쳐보며 동작을 확인해보자.

명령어

설명

사용예

옵션

cd

디렉터리(폴더) 이동

cd 이동하고 싶은 폴더명

-a 시스템 파일 표시

-l 롱 포맷

-d 지정 디렉토리 정보 표시

ls

폴더의 내용을 리스트 형식으로 표시

내용물을 보고 싶은 폴더로 이동하여 Is

 

mv

파일 이동

mv (이동 전 파일명/폴더명) (이동할 파일명/폴더명)

 

cp

파일이나 폴더 복사

cp (복사 원본 파일명/폴더명) (복사할 곳 파일명/폴더명)

-i 대화형 모드

-p 파일의 속성 유지

-R 통째로 복사

-v 복사된 파일명을 표시

clear

삭제하지는 않고 화면을 깨끗이 한다.

-

 

mkdir

폴더 작성

mkdir 폴더명

-p 중첩된 폴더를 단번에 작성

touch

파일 작성

touch 파일명

 

rmdir

비어있는 폴더를 삭제

rmdir 폴더명

 

rm

파일이나 폴더를 삭제

rm 파일명/폴더명

-r 디렉토리 및 디렉토리 내의 모든 파일을 삭제

pwd

현재있는 위치를 표시

 

 

find

파일 검색

find/ -name 파일명

-n 행수표시

cat

파일의 내용 표시

cat 파일명

 

diff

파일과 파일의 내용의 차이를 표시

diff 옛 파일명 새로운 파일명

 

grep

지정한 문자열이 텍스트 안에 존재하는 경우 그 행을 검출

grep "검색하고 싶은 문자" * 파일명

 

chmod

파일이나 폴더의 접근 권한 변경

chmod 권한 파일명

 

chown

파일이나 폴더의 오너나 그룹을 변경

chown 변경하고싶은 유저명 변경하고 싶은 파일명

 

history

명령어의 이력을 표시

-

 

ln

파일이나 폴더에 링크 설정

In 링크할 파일명 링크처 파일명/폴더명

 

man

명령어 매뉴얼 표시

man 명령어

 

apropos

man 페이지 내용을 검색

apropos 키워드

 

less

텍스트 파일을 열람

less 파일명

 

more

파일을 페이지 단위로 열람

more 파일명

 


3. 목적별 잘 사용하는 명령어

 조금 더 목적에 맞게 Linux 명령어를 사용하고 싶은 경우가 있을 것이다. 그 중에서도 잘 사용되는 것을 소개하므로 한번 봐두고, 세세한 것을 그때 그때 알아보도록 하라.

1) 유저관리를 하고 싶을 때

명령어

설명

useradd/adduser

유저 신규 작성

deluser

유저 삭제

groupadd

그룹 신규 작성

groupdel

그룹 삭제

chfn

유저 정보 변경

2) 시스템 관리를 하고 싶을 때

명령어

설명

free

빈 메모리나 사용중인 메모리 표시

last

최근 로그인한 유저명 표시

finger

유저 정보 표시

3) 네트워크 관련을 설정하고 싶을 때

명령어

설명

route

라우팅의 표시나 설정

ftp

파일을 FTP로 전송

ssh

ssh로 로그인

 Linux명령어는 다른 것도 굉장히 많으나, 전부 외우는 것은 효율이 나쁘다. 모처럼 외워도 평생 사용하지 않는 것도 있다.처음에는 위에 소개된 것으로 충분하므로 실제로 손을 움직여가면서 시험삼아 사용해보자.


4. 기억해두면 편리한 단축키

 외워두면 매우 도움이되는 단축키를 설명한다. 이것을 머리에 외우는 것보다, 손가락이 익숙해지도록 하자.

편리하겠구나 생각하는 것부터 빨리 사용해 보면 좋을 것이다. 필수적인 것은 아니지만, 이것을 잘 다루는지 여부에 따라 효율성이 2~3배 달라진다.

 

단축키

설명

↑ ↓

명령어 이력을 순서대로 표시

tab키

폴더나 파일명의 예측 변환

Ctr(컨트롤) + a

커서는 맨 앞으로

Ctr(컨트롤) + e

커서를 맨 뒤로

Ctr(컨트롤) + b

커서를 왼쪽으로 이동

Ctr(컨트롤) + f

커서를 오른쪽으로 이동

Ctr(컨트롤) + d

커서 위치의 문자를 삭제

Ctr(컨트롤) + h

커서 위치의 좌우 문자를 삭제

Ctr(컨트롤) + w

커서 위치의 왼쪽의 단어를 삭제

Ctr(컨트롤) + r

명령어 이력중에서 검색


5. 기억해두면 편리한 기호

기호

설명

사용예

.

현재 디렉토리

예를 들어, 다른 디렉토리에 있는 파일을 지금의 디렉토리에 복사 할 때 사용할 수 있다.

$ cp /Users/rriver/docs/readme.txt .

~-

직전에 있던 디렉토리

$ cd ~-

?

와일드 카드(임의의 1개의 문자)

$ ls ????.txt

*

와일드 카드(0개 이상의 임의의 문자열)

ls *.png

>

출력의 리다이렉션 (덮어쓰기)

cat text1.txt > text2.txt

>>

출력의 리다이렉션 추가(내용 추가)

cat text1.txt >> text2.txt

2>

에러를 파일에 기록

ls - 2> error.txt

|

복수의 명령어를 연결해 실행(파이프) ; 앞의 명령의 출력은 다음 명령의 입력이 됨

last | head -3

;

복수의 명령어를 연속해 실행 ; 각각 별도의 명령어

 


참고자료

https://www.sejuku.net/blog/5465

https://eng-entrance.com/linux-what-is-command

https://parashuto.com/rriver/tools/mac-command-line-basics

http://www.redout.net/data/command.html

 

728x90