ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Linux 터미널 명령어 ① - cd, cp, mv, rm
    Linux 2019. 1. 22. 02:55

    리눅스에는 수많은 명령어들이 있다. 서버나 네트워크 관리자, 또는 개발자가 아닌 일반 데스크탑 유저들은 대개 GUI 환경으로 리눅스를 사용하므로 그 많은 명령 중 일부만 알아도 사용에 전혀 문제가 없다. 그러나 윈도우즈조차도 검색을 통해 그때그때 필요한 명령을 검색한 다음 명령 프롬프트 창을 열고 입력해야 할 상황이 있는 만큼, 비록 리눅스의 편의성이 좋아지고 있더라도 기초적인 몇 가지 명령은 알아두는 것이 좋다.


    하지만, 명령어의 모든 옵션까지 알아야 하는 것은 아니다. 대표적인 압축 및 해제 명령어인 tar의 경우, 옵션만 수십 가지가 넘는다. 평범한 데스크탑 유저들은 그것들을 모두 알 필요도 없고 자주 쓰게 되는 몇 가지만 알고 있으면  충분하다.


    거의 대부분의 명령어는 ‘--help’ 옵션을 붙이면 다양한 옵션에 대한 소개와 도움말을 볼 수 있다. 일반적으로 리눅스에서 대문자와 소문자는 서로 구분되므로 정확히 입력해야 한다. 명령어도 하나의 프로그램이므로 같은 명령어라도 버전에 따라 기능상 차이가 있을 수 있으며, 저작권 관련 사항도 명령어마다 다른 것은 당연하다.


    오늘날 같은 컴퓨터 환경이 아니라 한 줄 한 줄 타이핑을 쳐서 컴퓨터를 운용하던 초창기 명령어들이므로 데스크탑 유저들 기준으로 보면 중복되는 명령이거나 불필요한 옵션인 경우도 상당히 많다. 표준적인 규격이라고 불릴 것도 없던 시대에 하나의 작업을 위해 맞춤으로 프로그램을 만들어두었던 것이 지금까지 남아 있는 경우도 있고, 어떤 것은 사실상 폐기된 명령어들도 있다. 그런 사정을 이해했다면 필요한 만큼만 그때그때 배워서 써도 충분하다는 것도 이해했으리라 본다.



    0. 터미널 사용을 위한 기초 몇 가지

    a. 패스나 구문 등이 긴 경우 마우스로 드랙 앤 드롭 가능

    b. ↑/↓ : 이전에(↑) / 다음에(↓) 입력했던 명령어

    c. control + u : 작성 중인 명령어나 구문을 지워야 할 때 한번에 삭제

    d. control + w : 작성 중인 명령어나 구문을 단어 단위로 삭제

    e. tab : 명령어의 처음 일부분만 입력하고 tab을 누르면 나머지 부분이 자동 완성됨



    1. cd 명령 : 위치 이동 (change directory)

    $ cd

    어느 곳에서든 홈 디렉토리, 즉 사용자 계정의 최상위 위치로 바로 이동

    $ cd ~ (위의 명령과 같음, ‘~’은 홈 디렉토리)

    $ cd ..

    상위 디렉토리로 이동 (‘..’은 한 단계 상위 디렉토리)


    2. cp 명령  : 복사 (copy)

    $ cp a.b c.d

    a.b라는 파일을 c.d라는 이름으로 바꿔서 별도 저장 (복사)

    $ cp /home/test/*.* .

    /home/test 디렉토리의 모든 파일을 현재 위치로 복사해 옴 (‘.’은 현재 디렉토리)

    $ cp ./test/*.* .

    현재 디렉토리에서 하위 디렉토리인 test의 모든 파일을 현재 디렉토리로 복사해 옴

    cf) ‘./사진’은 현재 위치에 있는 ‘사진’이라는 하위 디렉토리를 가리킴

    $ cp -r . /a

    현재 위치의 모든 구성 요소를 루트(/)의 a 디렉토리로 한번에 복사 (빈칸 주의!)


    3. mv 명령 : 이동 (move)

    $ mv a.b c.d

    a.b라는 파일을 c.d라는 이름으로 바꿈 (리눅스에서는 rename 명령이 따로 없음)

    $ mv a.b ./desktop

    현재 위치의 a.b라는 파일을 하위의 desktop이라는 디렉토리로 이동

    - 현재 위치의 하위 디렉토리 xxx는 ‘./xxx’로 써줘도 되고 그냥 ‘xxx’만 써도 됨

    - ‘/xxx’는 루트(/)의 하위 디렉토리로 전혀 다른 위치이니 주의해야 함

    $ mv a.b ./desktop/c.d

    a.b라는 파일을 c.d로 이름을 바꿔서 현재 위치의 desktop라는 하위 디렉토리로 옮김


    4. rm 명령 : 삭제 (remove)

    $ rm ~/Download/ef.ghi

    사용자의 홈 디렉토리에 있는 Download라는 디렉토리의 ef.ghi라는 파일을 삭제

    $ rm -r abcd

    현재 디렉토리에 있는 abcd라는 디렉토리와 그 안의 구성 요소들을 한번에 삭제