Server

TOP 20 터미널 기본 명령어 1탄 (예시와 상세한 설명)

HoodieJun 2021. 1. 30. 13:45

아무것도 없는 깜깜한 터미널입니다.
저는 전공자도 아니고 취미로 이것저것 하다 보니 터미널을 접하게 되었습니다.
그런데 처음 접했을 때 이 깜깜한 터미널처럼 정말 막막하고 어떻게 해야 할지 모르겠더군요.
그래서 기본적으로 가장 많이 사용하는 터미널 명령어를 몇 가지 정리해보고자 합니다.
내용은 얼마 안 되는데 예시를 달다 보니 스크롤이 길어져서 10가지씩 2편에 나눴습니다.


(편의상 directory를 폴더로 명칭 하였습니다.

리눅스 기반으로 사용할 수 있고 powershell 겸용은 따로 표기해두었습니다.

명령줄 앞에는 $ 를 붙였으며 그 외에는 표시되는 내용입니다.)

 

1. ls (powershell 사용 가능)

  -  list의 약자로 현재 폴더의 파일을 나열해서 보여줍니다.

  -  옵션으로 ls -a를 붙이면 숨겨진 파일이나 폴더도 같이 보여줍니다.

  -  ls -al 'a'옵션과 'ㅣ'옵션이 합쳐져서 모든 파일의 소유자, 권한 등의 자세한 정보도 함께 보여줍니다.

 

$ ls
example.txt

$ ls -a
. .. .example.txt example.txt

$ ls -al
total 8
drwxr-xr-x 2 cocojun cocojun 4096 Jan 30 12:18 .
drwxr-xr-x 19 cocojun cocojun 4096 Jan 30 12:25 ..
-rw-r--r-- 1 cocojun cocojun 0 Jan 30 12:18 .example.txt
-rw-r--r-- 1 cocojun cocojun 0 Jan 30 12:18 example.txt

 

2. mkdir (powershell 사용 가능)

  -  make directory 의 약자로 새로운 폴더를 만듭니다.

  -  원래는 폴더를 하나씩 만들 수 있지만 mkdir -p 로 p 옵션을 붙이면 하위 폴더를 한 번에 생성할 수 있습니다.

  -  테스트 폴더의 하위 폴더인 test1 test2 폴더도 한 번에 만들 수 있습니다.

 

$ mkdir test
$ ls
test

$ mkdir /home/test/test1/test2
/home/test/test1/test2/

 

3. cd (powershell 사용 가능)

  -  change directory의 약자로 폴더의 경로를 입력하면 이동할 수 있습니다.

  -  . 은 현재 폴더를 의미하고 .. 은 상위 폴더를 의미합니다. - 를 붙이면 이전 경로로 바로 이동할 수 있습니다.

 

$ cd test
~/test (현재 위치)

$ cd ..
/home (현재 위치)

$ cd /home/test/test1/test2
~/test/test1/test2 (현재 위치)

$ cd -
/home (현재 위치)

 

4. cp (powershell 사용 가능)

  -  copy의 줄임말로 우리가 평소에 많이 쓰는 복사입니다.

  -  폴더를 복사하고 싶은 경우 cp -r 을 붙여주시면 풀더가 복사됩니다. (powershell에서는 -Recurse 를 붙여주세요.)

  -  공백으로 명령어가 구분되므로 파일명에 공백이 있을 경우 따옴표로 묶어줘야 합니다.

 

$ cp '복사 할 파일' '복사 될 파일'

 

5. mv (powershell 사용 가능)

  -  move의 약자로, 이동할 때 또는 이름 바꿀 때 사용합니다. 흔히 쓰는 잘라내기와 붙여 넣기가 합쳐진 것과 같습니다.

  -  여기서 우리가 큰 파일을 복사하거나 이동시키면 시간이 오래 걸리겠죠?

      그런데 명령어만 실행하면 다 처리하는 동안 커서만 보입니다. 그래서 너무 답답하죠.

      그럴 때 -v 옵션을 붙여주면 진행상황이 표시됩니다.

 

$ mv /home/test/파일 /home/test15/파일
$ mv 원래이름 바꿀이름
$ mv -v /home/test/원래파일 /mnt/test/이동파일

 

6. rm (powershell 사용 가능)

  -  remove 의 약자로 삭제할 때 쓰는 명령어입니다. 휴지통으로 가지 않고 바로 삭제되니 조심하셔야 합니다.

  -  rm 파일1 파일2 파일3 이런 식으로 띄어쓰기로 파일을 구분하여 입력하면 여러 파일을 한 번에 삭제할 수 있습니다.

  -  rm만 사용하면 파일만 삭제 가능하고 폴더를 삭제하려면 rm -rf 를 사용해야 합니다. 하위 폴더+파일까지 전부 삭제되므로 주의해주세요! (powershell은 -Recurse -Force로 사용해주세요.)

 

 

7. pwd (powershell 사용 가능)

  -  path of the current working directory의 약자로 현재 작업 중인 폴더의 경로를 표시해줍니다.

  -  현재 자신이 어디에 있는지 모를 때 사용하면 좋습니다.

 

(powershell)
$ pwd
C:\Users\user\test

$ pwd
/home/user/test

 

8. cat (powershell 사용 가능)

  -  short for concatenate의 약자로 원하는 파일의 내용을 표시해줍니다.

 

$ cat example.txt
이것은 테스트 파일의 내용입니다.
cat 명령어를 실행하면 내용이 바로 표시됩니다.

 

-  살짝 응용하면 cat example.txt example.txt > example3.txt라고 하게 되면 example3.txt파일에 example.txt의 내용과 example2.txt 파일의 내용이 합쳐져서 example3.txt 파일이 만들어집니다.

  -  cat example.txt | tr a-z A-Z 를 하게 되면 파일의 모든 글자가 대문자로 바뀌는데 내용은 안 바뀌고 바뀌었을 때의 결과를 보여주기만 합니다. 파일로 저장하고 싶으면 cat example.txt | tr a-z A-Z > 대문자.txt 라고 하면 대문자.txt 에 바뀐 결과가 저장됩니다.

  - 만약에 줄 바꿈도 사용해서 파일을 저장하고 싶은 경우 EOF를 사용하시면 됩니다.

 

$ cat > example.txt << EOF
여기서부터 쓰는 내용이 저장됩니다.
줄바꿈이 일어나도 괜찮습니다.
쓰고 싶은 내용을 계속 쓰다가 맨 끝에 EOF를 작성하면 됩니다.
EOF

$ cat example.txt
여기서부터 쓰는 내용이 저장됩니다.
줄바꿈이 일어나도 괜찮습니다.
쓰고 싶은 내용을 계속 쓰다가 맨 끝에 EOF를 작성하면 됩니다.

 

9. touch

  -  아무 내용이 없는 빈 파일을 만듭니다.

 

$ touch example.txt
$ cat example.txt

 

10. which

  -  실행파일이 있는 경로를 나타내 줍니다. 경로 지정이 되어있는 파일은 명령어로 사용할 수 있습니다.

 

$ which mv
/usr/bin/mv

$ which firefox
/usr/bin/firefox

 

-  powershell의 경우 Get-Command '실행 프로그램' | Select-Object -ExpandProperty Definition 또는 gcm '실행 프로그램' 을 사용할 수 있습니다.

 

$ Get-Command notepad | Select-Object -ExpandProperty Definition
C:\Windows\system32\notepad.exe

$ gcm notepad
CommandType   Name         Version    Source
-----------   ----         -------    ------
Application   notepad.exe  10.0.19... C:\Windows\system32\notepad.exe

 

이렇게 기본적인 명령어 10가지를 소개해드렸는데요.

이 명령어들을 응용하면 더욱 다양하고 편하게 쓸 수 있는 방법도 많습니다.

사용해보면서 자신이 편한 대로 맞춰가는 게 가장 좋은 것 같아요.

2편에서 또 다른 명령어 10가지로 찾아오겠습니다.

감사합니다!

 

hoodiejun.tistory.com/4

 

TOP 20 터미널 기본 명령어 2탄 (예시와 상세한 설명)

저번 편에 이어서 리눅스 기본 명령어 10가지를 소개해드릴게요! (사용하면서 permission denied 라는 문구가 나오면 superuser 권한이 필요한 작업이니 명령어 앞에 sudo를 붙여주세요.) 1. find 단어의 뜻

hoodiejun.tistory.com