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
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
'IT > 기초 지식' 카테고리의 다른 글
[UML] 시퀀스 다이어그램(Sequence Diagram) 기초 정복 (0) | 2020.10.13 |
---|---|
[git] 잘 잊어버리는 사람을 위한 git diff 치트 시트 (0) | 2020.10.07 |
[네트워크] VPN 개념과 Windows10에서의 설정 방법 (0) | 2020.05.06 |
[IT 용어] PoC(Proof of Concept)란 (0) | 2020.04.22 |
[네트워크] 네트워크의 기초 (0) | 2020.04.22 |