[0916] 리눅스 명령어

2019. 9. 16. 12:31

리눅스 명령어에 대해 학습을 했다. 수업시간에 실습한 내용을 위주로 설명해놓는다.

 

passwd : 패스워드 변경

pwd : 현재 작업 디렉터리 절대경로 표시

clear : 화면 지우기

mkdir : 디렉터리 생성

rmdir: 디렉터리 삭제

 

ls : 디렉터리 목록 보기

-> ls 명령어의 옵션들

-a : 디렉터리 내의 모든 파일을 출력

-l : 파일의 다양한 정보 출력(소유자, 권한, 크기 날짜) ls -l로 사용한다.

-- help : 도움말을 출력한다

ls -al : 디렉터리들의 권한을 표시 (chmod로 권한을 바꾸려면 이 명령어를 사용하면서 해야한다)

 

cd : 디렉토리 이동

-> 알아야 하는 내용

/ : 최상위 디렉터리

. : 현재 디렉터리

.. : 상위 디렉터리

- : 자신의 계정 디렉터리(home directory)

 

* 참고: 상대 주소와 절대 주소

* cp : 파일 및 디렉토리 복사

-> 사용방법 : cp [원본 파일] [복사될 위치 디렉터리/복사될 파일]

-> ex : cp /home/sys01/sys01/lab01.tar.gz ./test 일 때 

/home/sys01/sys01/ 경로에 있는 lab01.tar.gz파일을 test 디렉토리에 복사하여라라는 뜻이다.

 

* mv : 디렉터리 이동 및 파일 이름 변경할 때 쓰임

-> 사용방법 : mv data1 data2 일 때, data1 파일의 파일명을 data2로 바꾸겠다는 뜻이다. (1)

                  mv [변경할 파일/디렉터리] [변경될 파일/디렉터리]

 

[디렉토리의 권한을 변경하는 방법]

- 권한을 볼 때에는 세 자리씩 본다. rwx rwx rwx 이렇게 보는데, 앞에 -또는 d가 붙어있는 경우가 있다.

여기서 -는 일반적인 파일을 뜻하며 d는 디렉터리를 뜻한다. 그 외에 I은 링크 파일을 뜻하고, s는 소켓파일을 뜻한다.

- 파일 유형: r(읽기), w(쓰기), x(실행)

 

* chmod [옵션] [권한] 파일 디렉토리명

-> 옵션: 

제일 많이 쓰이는 권한 중 하나인 -R은 디렉터리와 파일들의 권한을 재귀적으로 모두 바꾸는 옵션이다.

-> 권한:

권한은 세가지가 있는데 (rwx) 모든 권한을 주렴 4+2+1 합계가 7이 된다. 그래서 만야 모든 그룹의 권한을 다 허용해 줄 경우 777을 입력하면 된다. 예를 들어 test 디렉터리에 모든 그룹에 대해 권한을 허용할 경우 chmod 777 test가 되는 것이다.

rm : 파일 및 디렉터리 삭제

-> 디렉터리 삭제는 일반적으로 rmdir을 사용하지만 디렉터리 안의 디렉터리나 내용물이 존재할 경우 지울수가 없다. 이 때, 강제로 지우게 하는 명령어는 rm 디렉터리명 -rf로 이것을 사용해서 지운다.

 

cat : 텍스트 파일 내용 출력 cat [파일명]을 하면 vi로 보지 않아도 바로 파일의 내용을 알 수 있다.

 

* tar : 아카이브(.tar)를 만들거나 푼다. 여기서 아카이브란, 여러 파일을 하나로 묶는 것이다.

-> 옵션

-c : 아카이브 생성

-x : 아카이브에 묶인 파일이나 디렉터리를 풀어준다.

-f : 파일 이름 지정

-v : 아카이브에 추가되거나 풀리고 있는 파일의 이름을 화면에 보여준다.

-z : *.gz 파일로 압축한다.

 

->사용법

파일을 묶고 압축할 경우 : tar cvfz [파일명.tar.gz] [압축할 파일(여러개 나열도 가능)/디렉터리]

압축한 파일 풀기 : tar xvfz [파일명]

 

* find

디스크에 저장된 각종 파일/디렉터리를 검색한다. 

-> 사용법 : find [해당 경로] [어떤 것을 찾을 것인지 입력]

-> ex) test라는 문자를 this 디렉토리에서 찾고싶을 경우, find -name 'test' this를 입력하면 된다.

 

* I/O Redirection

입출력의 방향을 사용자가 원하는 대로 바꿀 수 있다.

 

- ex : 

ls -la > ls.list를 하면, ls.list 파일이 만들어지면서 ls -al을 했을 때 나오는 정보를 써서 그 파일에 저장한다.

sort < ls.list > sorted.list를 하면 ls.list안에 있는 내용을 sort하여 sorted.list안에 써서 파일로 저장한다.

 

cat >test.txt test.txt 파일을 만들고, 바로 내용을 콘솔창에서 입력할 수 있다. vi를 이용하지 않고도 가능한 방법이며, 쓰기를 마치고 싶을 때에는 ctrl+d를 누르면 된다.

cat >>test.txt를 했을 때에는 기존 내용에 추가를 해서 사용하므로 기존의 내용이 지워지지 않는다.

 

* grep

-> 사용법: grep [<옵션>] <패턴> [<file name>]

-> ex : grep -r 'Hello' lab01 여기서 -r은 하위 디렉터리까지 검색하겠다는 옵션이고, lab01 디렉토리에서 Hello 라는 문자를 찾아서 그 포함되어있는 문자열을 출력한다.

 

* Pipe

-> 기호를 기준으로 왼쪽 명령어의 출력을 오른쪽 명령어의 입력으로 보낸다.

    간단히 말해서, 파이프처럼 입출력을 이어주는 역할을 한다.

-> ex )  cat filename.txt | grep 'hello'를 하면 | 의 기호가 파이프의 역할을 해주기 때문에 cat으로 filename을 읽고, grep 명령어로 hello를 읽어서 디스플레이에 출력해준다. 이처럼 입출력을 이어서 출력해주는 역할을 한다.

 

[vi 에디터]

* vi 에디터에서 문자를 복사할 때, esc 누르고 yy 누르고 p를 누르면 복사, d는 삭제

* vi 작성시 esc를 누르고 : 를 입력한 다음 q!를 하면 텍스트 수정이 있었을 때에도 저장하지 않고 종료한다.

* 문자 치환 기능도 있다. 예를 들어 %s/you/I/g 의 명령어를 치면, 문장 안에 you라는 문자를 모두 I로 바꾼다는 명령어이다.

 

BELATED ARTICLES

more