리눅스 / 명령어 / cp - 복사하는 명령어, mv - 이동하는 명령어

cp는 copy의 약자로 복사하는 명령어, mv는 move의 약자로 이동하는 명령어이다.

복사하기

  • abc.txt 파일을 def.txt로 이름을 바꾸어 복사한다.
cp abc.txt def.txt
  • xyz라는 디렉토리가 없다면 abc.txt 파일을 xyz 파일로 복사한다.
  • xyz라는 디렉토리가 있다면 xyz 디렉토리 안에 abc.txt 파일을 복사한다.
cp abc.txt xyz
  • abc.txt 파일을 xyz 디렉토리 안에 def.txt라는 이름으로 복사한다.
cp abc.txt xyz/def.txt
  • abc가 디렉토리이고 xyz라는 디렉토리가 없다면, abc 디렉토리를 xyz로 이름을 바꾸어 복사한다.
  • abc가 디렉토리이고 xyz라는 디렉토리가 있다면, abc 디렉토리를 xyz 디렉토리 안에 복사한다. 즉 xyz/abc가 된다.
cp -r abc xyz
  • abc가 디렉토리이고 xyz/zzz라는 디렉토리가 없다면, abc 디렉토리를 xyz 디렉토리 안에 zzz로 이름을 바꾸어서 복사한다.
  • abc가 디렉토리이고 xyz/zzz라는 디렉토리가 있다면, abc 디렉토리를 xyz/zzz 디렉토리 안에 복사한다. 즉 xyz/zzz/abc가 된다.
cp -r abc xyz/zzz

이동하기

  • abc.txt 파일을 def.txt로 이름을 바꾸어 이동한다. 파일 이름을 바꾸는 것과 결과가 같다.
mv abc.txt def.txt
  • xyz라는 디렉토리가 없다면 abc.txt 파일을 xyz로 이름을 바꾸어 이동한다.
  • xyz라는 디렉토리가 있다면 xyz 디렉토리 안으로 abc.txt 파일을 이동한다.
mv abc.txt xyz
  • abc.txt 파일을 xyz 디렉토리 안으로 def.txt로 이름을 바꾸어 이동한다.
mv abc.txt xyz/def.txt
  • abc가 디렉토리이고 xyz라는 디렉토리가 없다면, abc 디렉토리를 xyz로 이름을 바꾸어 이동한다.
  • abc가 디렉토리이고 xyz라는 디렉토리가 있다면, abc 디렉토리를 xyz 디렉토리 안으로 이동한다. 즉 xyz/abc가 된다.
mv abc xyz
  • abc가 디렉토리이고 xyz/zzz라는 디렉토리가 없다면, abc 디렉토리를 xyz 디렉토리 안으로 zzz로 이름을 바꾸어 이동한다.
  • abc가 디렉토리이고 xyz/zzz라는 디렉토리가 있다면, abc 디렉토리를 xyz/zzz 디렉토리 안으로 이동한다. 즉 xyz/zzz/abc가 된다.
mv abc xyz/zzz

Midnight Commander

  • 파일 복사, 이동 작업은 Midnight Commander를 이용하면 쉽게 할 수 있다.

  • CentOS라면 다음 명령으로,
yum install mc
  • Ubuntu라면 다음 명령으로 설치할 수 있다.
apt install mc
같은 카테고리의 다른 글

Ubuntu 18.04 Server / 언어 변경하는 방법

현재 언어 확인하기 locale 명령어로 현재 언어가 무엇인지 확인할 수 있습니다. # locale LANG=en_US.UTF-8 LANGUAGE= LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_PAPER="en_US.UTF-8" LC_NAME="en_US.UTF-8" LC_ADDRESS="en_US.UTF-8" LC_TELEPHONE="en_US.UTF-8" LC_MEASUREMENT="en_US.UTF-8" LC_IDENTIFICATION="en_US.UTF-8" LC_ALL= 언어 변경하기 사용할 언어를 먼저 설치합니다. 한국어를 사용하고 싶다면 다음과 같이 명령합니다. # apt-get install language-pack-ko /etc/default/locale을 열고 다음과 같이 만듭니다. LANG=ko_KR.UTF-8 테스트하기 새로 로그인하거나 재부팅하면 변경한 언어가 적용됩니다. 의미 없는 문자열을 입력해보거나... # 123 123: 명령을 찾을 수 없습니다 locale 명령어로 확인할 수 있습니다. # locale LANG=ko_KR.UTF-8 LANGUAGE= LC_CTYPE="ko_KR.UTF-8" LC_NUMERIC="ko_KR.UTF-8" LC_TIME="ko_KR.UTF-8" LC_COLLATE="ko_KR.UTF-8" LC_MONETARY="ko_KR.UTF-8" LC_MESSAGES="ko_KR.UTF-8" LC_PAPER="ko_KR.UTF-8" LC_NAME="ko_KR.UTF-8" LC_ADDRESS="ko_KR.UTF-8" LC_TELEPHONE="ko_KR.UTF-8" LC_MEASUREMENT="ko_KR.UTF-8" LC_IDENTIFICATION="ko_KR.UTF-8" LC_ALL=

Ubuntu / 특정 패키지만 업그레이드 하기, 보안 업데이트만 업그레이드 하기

우분투 서버에 접속하면 업데이트가 필요한 패키지가 있는지 알려줍니다. 두 가지 분류로 알려주는데, 하나는 패키지 업데이트, 또 하나는 보안 업데이트입니다. 소프트웨어는 보통 최신 버전을 유지하는 것이 좋지만, 업그레이드했을 때 문제가 없는지 충분히 확인을 해야 합니다. 따라서 특정 패키지만 업그레이드를 하거나, 보안 업데이트만 해야 하는 경우가 발생하는데, 어떻게 그런 작업을 하는지 알아보겠습니다. 특정 ...

Ubuntu 16.04 / Apache / javascript 폴더 접근이 안되는 문제 해결하는 방법

javascript 폴더 접근 불가 우분투(Ubuntu)에서 아파치(Apache)로 웹서버를 운영할 때 이상한 문제가 하나 발생합니다. 사이트 경로에 javascript가 있으면 forbidden 에러가 나는 것입니다. Forbidden You don't have permission to access /javascript/ on this server. 이 문제가 발생하는 이유는 자바스크립트 설정 때문입니다. /etc/apache2/conf-available/javascript-common.conf에 다음과 같은 코드가 있습니다. Alias /javascript /usr/share/javascript/ javascript로 접속하면 /usr/share/javascript/로 연결시키라는 뜻입니다. 사이트 접속자는 /usr/share/javascript/에 접속 권한이 없으므로 forbidden 에러가 ...

Rocky Linux 8 / DNF 사용법

Rocky Linux 8 / DNF 사용법

dnf는 패키지를 관리하는 명령어이다. 도움말 도움말 보기 # dnf -h 목록 보기 패키지 목록 보기 # dnf list 그룹 목록 보기 # dnf grouplist 검색 zip을 키워드로 패키지 검색 # dnf search zip 정보 출력 zip 패키지 정보 출력 # dnf info zip Server with GUI 그룹 정보 출력 # dnf groupinfo 'Server with GUI' 설치 zip 패키지 설치 # dnf install zip httpd와 php 설치 # dnf install httpd php Server ...

CentOS 7 / SSH / 포트 변경하는 방법

CentOS 7 / SSH / 포트 변경하는 방법

리눅스 서버에 SSH 접속을 하는 공격이 있습니다. SSH Brute Force라고 하는데, 여러 아이디와 비밀번호로 로그인을 시도하는 공격입니다. 이 공격을 방어하는 방법은 여러가지가 있습니다. root 계정으로 로그인 못하게 하기 암호를 복잡하게 만들기 접속 가능 IP를 정하기 SSH 포트 번호 바꾸기 이 중에서 SSH 포트 번호 바꾸는 방법을 정리해보겠습니다. CentOS 7 기준이며, 포트 번호를 1980으로 바꾼다고 가정하겠습니다. SSH 설정 파일 ...

Ubuntu 22.04 Server / ZIP 압축 파일 푸는 방법

ZIP 파일을 압축 해제하기 위해서는 unzip 패키지가 필요하다. # apt install unzip xxx.zip 파일을 압축 해제하려면 다음과 같이 명령한다. # unzip xxx.zip 다음과 같이 명령하여 도움말을 볼 수 있다. # unzip -h 결과는 다음과 같다. UnZip 6.00 of 20 April 2009, by Debian. Original by Info-ZIP. Usage: unzip Default ...

리눅스 / 명령어 / which, whereis, locate / 명령어 위치 찾기

명령어의 위치를 찾을 때 사용할 수 있는 명령어에는 which, whereis, locate가 있다. 명령어의 위치만 찾을 때는 which를 사용하고, 관련된 파일들의 위치까지 찾을 때는 whereis나 locate를 사용한다. which 명령어로 find 명령어를 찾는다. # which find /usr/bin/find whereis 명령어로 find 명령어를 찾는다. # whereis find find: /usr/bin/find /usr/share/man/man1/find.1.gz locate 명령어로 find 명령어를 찾는다. # locate find /usr/bin/find /usr/bin/find2perl /usr/bin/findmnt /usr/bin/nl-link-ifindex2name /usr/bin/nl-link-name2ifindex /usr/bin/oldfind /usr/lib64/python2.7/modulefinder.py /usr/lib64/python2.7/modulefinder.pyc /usr/lib64/python2.7/modulefinder.pyo /usr/sbin/btrfs-find-root /usr/sbin/findfs /usr/share/bash-completion/completions/findmnt /usr/share/doc/findutils-4.5.11 /usr/share/doc/findutils-4.5.11/AUTHORS /usr/share/doc/findutils-4.5.11/COPYING /usr/share/doc/findutils-4.5.11/ChangeLog /usr/share/doc/findutils-4.5.11/NEWS /usr/share/doc/findutils-4.5.11/README /usr/share/doc/findutils-4.5.11/THANKS /usr/share/doc/findutils-4.5.11/TODO /usr/share/doc/wpa_supplicant-2.6/examples/p2p/p2p_find.py /usr/share/doc/wpa_supplicant-2.6/examples/p2p/p2p_stop_find.py /usr/share/info/find-maint.info.gz /usr/share/info/find.info.gz /usr/share/locale/be/LC_MESSAGES/findutils.mo /usr/share/locale/bg/LC_MESSAGES/findutils.mo /usr/share/locale/ca/LC_MESSAGES/findutils.mo /usr/share/locale/cs/LC_MESSAGES/findutils.mo /usr/share/locale/da/LC_MESSAGES/findutils.mo /usr/share/locale/de/LC_MESSAGES/findutils.mo /usr/share/locale/el/LC_MESSAGES/findutils.mo /usr/share/locale/eo/LC_MESSAGES/findutils.mo /usr/share/locale/es/LC_MESSAGES/findutils.mo /usr/share/locale/et/LC_MESSAGES/findutils.mo /usr/share/locale/fi/LC_MESSAGES/findutils.mo /usr/share/locale/fr/LC_MESSAGES/findutils.mo /usr/share/locale/ga/LC_MESSAGES/findutils.mo /usr/share/locale/gl/LC_MESSAGES/findutils.mo /usr/share/locale/hr/LC_MESSAGES/findutils.mo /usr/share/locale/hu/LC_MESSAGES/findutils.mo /usr/share/locale/id/LC_MESSAGES/findutils.mo /usr/share/locale/it/LC_MESSAGES/findutils.mo /usr/share/locale/ja/LC_MESSAGES/findutils.mo /usr/share/locale/ko/LC_MESSAGES/findutils.mo /usr/share/locale/lg/LC_MESSAGES/findutils.mo /usr/share/locale/lt/LC_MESSAGES/findutils.mo /usr/share/locale/ms/LC_MESSAGES/findutils.mo /usr/share/locale/nl/LC_MESSAGES/findutils.mo /usr/share/locale/pl/LC_MESSAGES/findutils.mo /usr/share/locale/pt/LC_MESSAGES/findutils.mo /usr/share/locale/pt_BR/LC_MESSAGES/findutils.mo /usr/share/locale/ro/LC_MESSAGES/findutils.mo /usr/share/locale/ru/LC_MESSAGES/findutils.mo /usr/share/locale/rw/LC_MESSAGES/findutils.mo /usr/share/locale/sk/LC_MESSAGES/findutils.mo /usr/share/locale/sl/LC_MESSAGES/findutils.mo /usr/share/locale/sr/LC_MESSAGES/findutils.mo /usr/share/locale/sv/LC_MESSAGES/findutils.mo /usr/share/locale/tr/LC_MESSAGES/findutils.mo /usr/share/locale/uk/LC_MESSAGES/findutils.mo /usr/share/locale/vi/LC_MESSAGES/findutils.mo /usr/share/locale/zh_CN/LC_MESSAGES/findutils.mo /usr/share/locale/zh_TW/LC_MESSAGES/findutils.mo /usr/share/man/man1/find.1.gz /usr/share/man/man1/find2perl.1.gz /usr/share/man/man1/oldfind.1.gz /usr/share/man/man8/btrfs-find-root.8.gz /usr/share/man/man8/findfs.8.gz /usr/share/man/man8/findmnt.8.gz locate 명령어는 -n 옵션으로 출력 ...

CentOS 7 / firewall-cmd 명령어로 방화벽 관리하기

CentOS 7 / firewall-cmd 명령어로 방화벽 관리하기

CentOS의 방화벽 관리 데몬은 firewalld입니다. 설정은 firewall-cmd 명령어로 합니다. 방화벽 실행 여부 확인 firewall-cmd --state 실행 중이면 running, 실행 중이 아니면 not running을 출력합니다. 방화벽 다시 로드 firewall-cmd --reload 방화벽 설정 후 다시 로드해야 적용됩니다. 존(Zone) 출력하기 firewall-cmd --get-zones 존(zone) 목록을 출력합니다. firewall-cmd --get-default-zone 기본 존을 출력합니다. firewall-cmd --get-active-zones 활성화된 존을 출력합니다. 사용 가능한 서비스/포트 출력하기 firewall-cmd --list-all 사용 가능한 모든 서비스/포트 목록을 출력합니다. firewall-cmd --zone=public --list-all public 존에 ...

CentOS 7 / yum으로 phpMyAdmin 설치하는 방법

CentOS 7 / yum으로 phpMyAdmin 설치하는 방법

phpMyAdmin은 MySQL 또는 MariaDB를 관리하는 유용한 툴입니다. 그런데 CentOS 7 기본 패키지에는 포함되어 있지 않습니다. 하지만, EPEL Repo를 추가하면 yum으로 설치하고 업그레이드를 할 수 있습니다. EPEL Repo 추가 yum install epel-release phpMyAdmin 설치 yum install phpmyadmin 설정 파일 /etc/httpd/conf.d/phpMyAdmin.conf 기본 설정은 외부 접속 불가입니다. 접속하는 PC의 IP를 추가하면 외부 접속이 가능합니다. 접속 주소 http://server-ip/phpMyAdmin

Rocky Linux 8 / 고정 IP 설정하는 방법

Rocky Linux 8 / 고정 IP 설정하는 방법

보통 Rocky Linux를 설치할 때 IP를 설정하나, 여러 가지 이유로 IP 설정을 다시 해야 하는 경우가 있다. IP를 설정하는 두 가지 방법을 소개한다. TUI 네트워크 설정 파일을 수정하는 것보다는 NetworkManager Text User Interface(nmtui)를 이용하는 게 편하다. nmtui를 실행한다. Edit a connection을 선택한다. 설정하려는 네트워크 카드를 선택한다. 현재 설정이 나오는데... 적절히 설정한다. 다음과 같이 명령하여 반영한다. systemctl restart NetworkManager GUI Settings를 연다. Network에서 ...