기본 콘텐츠로 건너뛰기

8. cp

안녕하세요, MJ 입니다. 리눅스 파일복사 명령어 cp 에 대해 알아보겠습니다. 리눅스 cp 명령어는 윈도우 copy 명령어와 같은 기능을 합니다. 파일이나, 디렉토리를 복사 할 때 사용됩니다. cp 명령어의 도움말을 확인 해 보겠습니다. 펼치기/접기 Usage: cp [OPTION]... [-T] SOURCE DEST   or:  cp [OPTION]... SOURCE... DIRECTORY   or:  cp [OPTION]... -t DIRECTORY SOURCE... Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY. Mandatory arguments to long options are mandatory for short options too.   -a, --archive                same as -dR --preserve=all       --attributes-only        don't copy the file data, just the attributes       --backup[=CONTROL]...

1. cd

안녕하세요, MJ 입니다.

리눅스 명령어 cd 에 대해 알아보겠습니다.


cd 명령어는 change directory의 약어로 현재 위치한 디렉토리 에서 다른 디렉토리로 이동하는 명령어 입니다.

cd 명령어를 이용하여 디렉토리 이동하는 방법은 다음과 같습니다.

[user@Hostname ~]$ cd [이동하고자 하는 경로]

굉장히 단순한 명령어인 듯 하지만, 경로를 나타내는 문자를 알고 있어야 하므로, 이미 내가 알고 있는 경로가 아니라면 경로 확인을 위해 ls 명령어를 먼저 수행 해볼 필요가 있게 됩니다.

경로는 나타내는 방법에는 / 로 시작하는 풀 경로와,

현재의 디렉토리를 기준으로 한 상대 경로로 나타 낼 수 있습니다.

예시를 제공하기 위해 디렉토리 구조를 표현 해 보겠습니다.

현재 내가 위치 한 경로가 /root/temp/2/10/ 디렉토리 일 경우,

[root@run-linux temp]# tree `pwd`
/root/temp
    ├── 1
    │   ├── 10
    │   │   ├── 100
    │   │   └── 200
    │   ├── 20
    │   │   ├── 100
    │   │   └── 200
    │   └── 30
    │   ├── 100
    │   └── 200
    ├── 2
    │   ├── 10
    │   │   ├── 100
    │   │   └── 200
    │   ├── 20
    │   │   ├── 100
    │   │   └── 200
    │   └── 30
    │   ├── 100
    │   └── 200
    └── 3
        ├── 10
        │   ├── 100
        │   └── 200
        ├── 20
        │   ├── 100
        │   └── 200
        └── 30
              ├── 100
              └── 200

현재경로: /root/temp/2/10

이동하고자 하는 경로: /root/temp/3/20

현재경로와 이동하고자 하는 경로가 위와 같을 때,
다음과 같이 풀 경로로 명령어를 입력하여 이동 하거나,

$ cd /root/temp/3/20
 

현재 경로를 기준으로 하여, 이동할 경로를 상대적으로 입력 해 볼 수 있습니다.

$ cd ../../3/20
 

※ 입력 한 상대 경로 설명.

점 두 개(..) 는 현재 위치 한 디렉토리에서 하나 상위 디렉토리를 의미합니다.
/root/temp/2/10 에서 하나 상위 디렉토리는
/root/temp/2 디렉토리 이고, 하나 더 상위 디렉토리로 이동하고있습니다.

하나 더 상위 디렉토리로 이동하게 되면 /root/temp 디렉토리가 됩니다.
두 번 상위 디렉토리로 이동 후, 3 디렉토리 아래의 20 디렉토리로 이동합니다.

결과적으로 풀 경로 입력과 동일한 경로로 이동을 하게 되지만,
만일 경로의 길이가 굉장히 길다면, 풀 경로를 입력하는 것 보다, 상대 경로를 입력 하는 것이 더 편리할 수 있기 때문에, 그때 그때 상황을 고려하여 더 편리한 입력 방법을 선택 할 수 있겠습니다.

cd 명령어로 입력 할 수 있는 경로에는 상대 경로와, 전체 경로 입력 외에도 현재 로그인 한 계정의 홈 디렉토리를 특수한 문자를 사용하여 표현 할 수 있습니다.

다른 경로에서는 경로상의 마지막 디렉토리명이 표시되는데 홈 디렉토리에서만큼은 물결문자가 표시 됩니다.

로그인을 해 보면 프롬프트 상에서 확인되는 물결 문자가 있습니다.

[root@run-linux ~]#
[user@run-linux ~]$

바로 이렇게 물결문자가 확인됩니다.
이 물결문자는 root 계정과 user 계정의 홈 디렉토리를 의미합니다.
이 물결문자를 이용하여 홈 디렉토리로 한번에 이동 할 수 있습니다.
또는 아무 옵션,과 경로가 없이 cd 명령어만 수행 하였을 때, 홈디렉토리로 이동하게 됩니다.

하지만 홈 디렉토리의 퍼미션은 기본적으로 700 이기때문에
본인 이외의 계정이 접근할 수 없어서, root 계정으로 확인 해 볼 수 있습니다.

 (나의 홈 디렉토리로 이동하기 1) cd ~
 (나의 홈 디렉토리로 이동하기 2) cd
(user의 홈 디렉토리로 이동하기 )  cd user~
(root의 홈 디렉토리로 이동하기 )  cd root~

또 하나, cd 명령어로 좀아까 내가 있던 경로로 이동을 할 수 있습니다.
바로 뺴기(-) 문자인데

(이전에 있던 경로로 다시 돌아가기) cd -
이렇게 이전 경로로 이동할 수 있습니다.
※ 여러번 되돌아갈 수 없고, 바로 이전에 있던 경로로만 이동이 가능합니다.

cd 명령어에 대해 알아보았습니다.


문의사항은 댓글을 남겨주시면 성심껏 답변을 드리도록 하겠습니다.

감사합니다.

댓글

가장 많이 본 글

2. 버추얼박스(2/2): VM생성

안녕하세요, MJ입니다.   VM 생성 후 , OS 설치를 해야 VM 을 사용 해 볼 수 있을텐데 ,   현재 서버용 OS 로 가장 많이 사용되는 Red Hat 리눅스로 하고싶지만 , 라이선스 문제로 커뮤니티 버전의 OS 중에 Red Hat 계열의 Rocky Linux 로 제가 마음대로 결정 해 보았습니다 . ( 버전은 현재 기준으로 최신 9.4 버전 )   현재는 OS 를 설치 하기위한 미디어가 없는줄로 압니다 . 설치 미디어를 다운로드 하는데에 시간이 걸리기때문에 , 설치미디어 다운로드를 먼저 걸어놓고 , VM 생성을 하겠습니다 .   1. Rocky Linux – 9.4 iso 이미지 다운로드 URL: https://rockylinux.org/download   ( " DVD ISO " 버튼을 클릭하면 다운로드가 시작됩니다 . )   2 . VM 생성 2-1) 기본정보입력 버추얼 박스 프로그램 실행 . 새로만들기 버튼 클릭 생성 할 VM 의 이름을 작성 iso 이미지를 다운로드 중이므로 아직 선택하지 않고 넘어갑니다 . OS 종류로 "Linux" 를 선택 OS 배포판으로 "RedHat 9.x (64bit)" 을 선택 ( Rocky Linux 가 래드햇계열인데 , 목록에 Rocky Linux 가 없어서 ) 다음 버튼 클릭   iso 이미지를 넣고 시작하게 되면 , 무인 설치 건너뛰기 옆 체크박스에 체그가 안 된 상태가 확인되는데 , 무인설치를 하지 않도록 체크를 해 주세요 . ( 설치 과정을 봐야하기때문에 무인설치가 안되면 좋겠습니다 .)   2-2) 스펙 : 메모리 용량 , CPU 개수 , BootMode("Legacy"/E...

1. 버추얼박스(1/2): 설치

안녕하세요, MJ입니다. 나의 환경에서 리눅스 머신을 별도로 구동시키고 , 테스트 해 보기위해 가상환경이 필요하게 됩니다 . 가상환경이라고 해서 거창한것처럼 보일 수 있지만 , 가상환경은 가상의 머신을 구동 시킬 수 있는 환경으로 버추얼 박스 , VMWare, Hyper-V, QEMU 정도가 알려진 가상환경 에뮬레이터 라고 볼 수 있겠습니다 .   이 중에서 완전 무료로 사용할 수 있는 것은 Hyper-V 와 QEMU 이지만 , VirtualBox 역시 ExtensionPack 을 설치하지 않는다면 상업용으로도 무료로 사용할 수 있습니다. (비 상업적인 용도로는 ExtensionPack을 설치해도 무료입니다) 조작 및 사용방법이 간단한 VirtualBox 를 이용해 가상 환경 구성을 위한 방법에 대해 소개 하겠습니다 .     1) 버추얼박스 다운로드 - 사이트 : https://virtualbox.org 사이트 접속 후 왼쪽 Downloads 클릭 Windows hosts 클릭 다운로드 된 프로그램을 실행 .   2) 버추얼박스 설치 실패 , 추가 프로그램 확인   버추얼박스 설치 시도 시 "microsoft visual c++ 2019 redistributable package being installed first" 이런 메시지가 확인되었고 , 버추얼박스 설치는 되지 않았습니다 . 구글에서 "microsoft visual c++ 2019 redistributable package being installed first" 이 메시지를 검색해서 첫번째로 확인되는 마이크로소프트 사이트 방문 . 버추얼박스 설치 실패 시 확인된 Redistributable 프로그램을 찾아가 내 OS 의 아키텍처와 일치...

6. OS 설치 후 확인(Rocky Linux - 9.4 )

안녕하세요 MJ 입니다 .   지난번 설치 했던 OS (Rocky Linux - 9.4) 의 부팅 된 화면 입니다 .   번 시간에는 OS 설치 시 설정 했던 내용들에 대해서 하나씩 잘 설정이 적용 되었는지 확인을 해 보도록 하겠습니다 .   [ 설치 시 설정 한 메뉴 ] root 계정 설정 일반유저 생성 타임존 패키지 꾸러미 선택 파티셔닝 네트워크     설정확인 (1/6): root 계정 설정 지정한 패스워드로 로그인을 시도 해 봅니다 . 로그인이 잘 됩니다 . ( 패스워드 설정 확인 )   설정확인 (2/6): 일반유저 생성 로그인 확인 일반유저도 로그인이 잘 됩니다 . ( 패스워드 설정 확인 )   관리자 권한 추가그룹으로 wheel 이 확인됩니다 . ( 관리자 권한 확인 ) : gid 에 표시된 그룹과 , groups 에 표시 된 그룹은 다른 것 입니다 . 계정은 소유자 아이디와 그룹 아이디를 필수로 가져야하고 , 다른 그룹을 가지는 것은 추가그룹 이라고 합니다 . uid 는 여러 개 가질 수 없지만 , 그룹은 여러 개를 가질 수 있습니다 .   Red Hat 계열의 리눅스 기준으로 , ~6 버전까지는 500 번이 일반 유저가 가지는   UID/GID 의 시작이고 , 7~ 버전부터는 1000 번이 시작되며,   기본 관리자 그룹으로 wheel 이 생성 및 설정 됩니다.     설정확인 (3/6): 타임존   설정 한 대로 , 한국시 (Asia/Seoul) 확인이 확인됩니다 .   설정확인 (4/6): 패키지 꾸러미 선택 선택 했던 ...