개발/Linux

리눅스 4편-기본 명령어 편

IT하는 문과생 2019. 9. 30. 08:00
이전 글
2019/09/28 - [Linux 이야기] - 리눅스 3편-리눅스의 디렉터리 구조를 파악하자

지난번 글에서는 리눅스의 디렉터리 구조에 대해 간략히 알아보았는데, 오늘은 이어서 리눅스를 이용하면서 자주 이용하게 될 명령어를 익혀보는 시간을 가져보고자 한다. 우리가 설치한 Ubuntu는 기본적으로 그래픽 기반의 사용자 환경을 제공하지만 우리가 이제부터 주로 사용하게 될 영역은 그곳이 아니라 아래와 같은 깜깜한 터미널 화면이다.
그리고 시작하기에 앞서 모든 명령어의 뒤에 --help 옵션을 주면 자세한 이용 방법이 나오므로 아래 기재되지 않은 명령어를 본다고 하더라도 당황하지 말고 --help 옵션을 보도록 하자(사용 예시: ls --help).

앞으로 친해질 수 있도록 노력하자

 

1. pwd(print working directory)

우선 터미널에서 현재 위치한 경로부터 파악해 보도록 하자. 현재 위치 경로 확인에는 pwd(print working directory)라는 명령어가 사용된다.

pwd는 현재 내가 위치한 디렉터리 경로를 알려준다.

현재 필자의 경우 pwd로 조회 시 /home/airless86이라는 사용자 디렉터리에 위치한 것으로 확인된다. airless86이라는 경로는 사용자 디렉터리로 각각 만든 계정 이름을 따라 생성되기 때문에 각자 본인의 로그인 계정으로 경로가 나올 것이다. 

 

2.  cd(change directory)

그리고 이어 폴더 이동에는 아래와 같은 cd(change directory) 명령어가 이용된다. 하단의 표를 참조하자.

항목 설명
cd [디렉토리 경로] 이동하려는 디렉토리로 이동
cd .. 한 단계 상위 디렉토리로 이동
cd / 최상위 디렉토리로 이동
 cd 
 cd ~
 cd $HOME 
사용자 홈 디렉토리로 이동(로그인 사용자)
cd ~계정명 입력한 사용자의 홈 디렉토리로 이동
cd - 이전 경로로 이동

기재한  cd 명령어 외에도 명령어가 더 있지만 기본적으로 알고 있어야 할 명령어 정도는 위와 같다. 그리고 그중에서도 자주 쓰이는 것은 상단에 붉은 글씨로 굵게 표시해 놓았으니, 정 안되면 위의 세 개라도 익히도록 하자.

 

3. ls(list)

그리고 폴더 이동 후 해당 폴더에 원하는 파일이 존재하는지 확인을 해야 할 때가 있다. 이러한 경우를 위해 각 폴더의 파일리스트를 보기 위한 명령어도 있다. ls(list) -조건의 형식을 가지고 있다. 단순히 ls라고만 사용해도 괜찮지만 아래 표의 조건들을 추가하면 보다 원하는 모습의 데이터를 끌어낼 수 있다.

항목 설명
-F 파일 유형을 나타내는 기호를 파일명 끝에 표시(디렉토리는 '/', 실행파일은 '*', 심볼릭 링크는 '@'가 나타남)
-l(소문자L)  파일에 관한 상세 정보를 나타낸다.
-r 파일과 디렉토리를 역순으로 출력한다.
-t 파일이 생성된 시간별로 표시
-a dot 파일을 포함한 모든 파일 표시
-C 도스의 dr/w 명령과 같이 한줄에 여러개의 정보 표시
-R 도스의 dr/s 명령과 같이 서브디렉토리 내용까지 표시

위에 별도 표기한 대로 명령어를 입력하면 아래와 같은 결과가 나온다. ls 명령어의 경우 실행을 한다고 해서 시스템에 문제가 생기는 일은 없으니 위 조건들을 마음껏 입력해서 디렉터리 내부 파일 리스트를 뽑는데 익숙해지도록 하자.

ls -lrt 입력 시 결과

4. cp(copy)

디렉터리 및 파일 복사의 경우 cp(copy) 명령어가 사용된다. 사용 방식은 아래와 같다.

cp [복사할 파일 이름] [복사된 파일 이름]
cp [복사할 디렉터리 이름] [복사된 디렉터리 이름]

예를 들어 a라는 파일을 복사하여 a_copy라는 파일로 만들고 싶은 경우 다음과 같은 명령어가 만들어지겠다.
cp a a_copy

어렵지 않다. 그리고 디렉터리 복사의 경우 -r 옵션이 더 붙는 것 외 차이는 없다. abc 디렉터리를 복사하여 def 디렉터리로 만드는 명령어는 아래와 같이 만들어진다.
cp -r abc def

이렇게 명령을 주면 abc 디렉터리를 복사하여 def라는 이름의 디렉터리로 생성한다.

 

5. mkdir (make directory)

리눅스에서는 디렉터리를 만들 때에도 명령어가 사용된다. 기본으로 mkdir [디렉터리명]으로 사용이 되는데, -p 옵션을 주는 경우 한 번에 하위 디렉터리까지 생성이 가능하다.

기본 형태 : mkdir testdir
>>현재 경로에 testdir 디렉터리 생성

-p 옵션 형태 : mkdir -p testdir/a/b/c/d/e
>>현재 경로에 testdir 디렉터리 생성 후 계속해서 하위 디렉터리에 a > b > c > d > e 순으로 디렉터리 생성

해당 처리 결과에 대한 것은 아래 화면을 확인하도록 하자.

mkdir 기본 형태
mkdir -p 옵션 사용
예제의 최종 결과

 

6. rm (remove)

rm은 리눅스 파일 및 디렉터리를 삭제할 때 이용한다. 디렉터리를 삭제할 때는 r 옵션을 주어야 한다. 여기서 정말 주의할 점은 디렉터리를 삭제할 때에는 하위 디렉터리까지 모두 삭제되므로 유의하자. 또한 -f 옵션을 주면 사용자에게 삭제 여부를 묻지 않고 바로 삭제를 진행한다. -f 옵션은 알고만 있고 웬만하면 사용하지 않도록 하자.

[사용 예제]
1. rm -r testdir
> 실행 결과: testdir 디렉터리 및 하위 디렉터리 모두 삭제

2. rm testfile
> 실행 결과: testfile 파일 삭제

 

여기까지 6가지의 리눅스 명령어를 알아보았다. 여기서 어느 정도 리눅스를 다룰 줄 아는 사람이 있다면 vi 및 cat, find 명령어에 대해 다루지 않은 것에 대해 의아해 할 수도 있다. 필자가 포스팅을 작성하던 중 vi나 cat, find와 같은 명령어는 따로 작성을 하는 게 좋겠다는 생각이 들었다. 그래서 기본 명령어 편에서는 해당 명령어들을 기재하지 않았다. 다음 편에서는 기본 명령어에 이은 vi / cat / find 명령어에 대해서 알아보는 시간을 가질 것이다.

오늘 포스팅에 기재된 명령어들은 리눅스를 다룬다고 했을 때 기본 중의 기본이기 때문에 웬만하면 오늘 다 익히고 내일 추가 명령어를 익히도록 하자.

 

관련 글
2019/09/26 - [Linux 이야기] - 리눅스 1편-맥(Mac)에 Linux 설치하기(Ubuntu) 
2019/09/27 - [Linux 이야기] - 리눅스 2편-Ubuntu 루트(root) 계정을 활성화해보자
2019/09/28 - [Linux 이야기] - 리눅스 3편-리눅스의 디렉터리 구조를 파악하자