더북(TheBook)

3.4.7 파일 다루기

파일을 복사할 때는 cp 명령을 사용합니다. ‘cp [옵션] [원본 파일] [사본 파일]’ 형식으로 입력합니다. 현재 작업 디렉터리에 touch 명령으로 teamdata라는 빈 파일을 만들고 cp 명령을 이용해서 giants라는 파일로 복사합니다. 원본과 사본의 권한과 소유권, 변경한 시각이 같습니다.

supreme@master:~$ touch teamdata 
supreme@master:~$ cp teamdata giants 
supreme@master:~$ ls -l 
-rw-rw-r-- 1 supreme supreme   0  7월 25 20:00 giants
-rw-rw-r-- 1 supreme supreme   0  7월 25 20:00 teamdata
...

원본 또는 사본의 경로를 구체적으로 지정할 수도 있습니다. teamdata 파일을 하위 디렉터리 BaseballTeam/KBO에 twins라는 파일로 복사합니다. 해당 디렉터리에서 복사된 파일을 찾을 수 있습니다.

supreme@master:~$ cp teamdata BaseballTeam/KBO/twins 
supreme@master:~$ ls -l BaseballTeam/KBO/ 
-rw-rw-r-- 1 supreme supreme 0 7월 25 20:05 twins

-r(--recursive) 옵션을 붙이면 하위 디렉터리에 존재하는 디렉터리와 파일을 모두 복사합니다. -a(--archive) 옵션은 파일을 복사하는 과정에서 접근 권한과 소유자, 그룹, 파일 수정 시간 정보를 그대로 보존합니다. KBO 디렉터리를 MLB 디렉터리로 복사합니다. 복사된 하위 디렉터리의 접근 권한과 소유권, 변경 시각이 그대로 유지됩니다.

supreme@master:~$ cp -ar BaseballTeam/KBO BaseballTeam/MLB 
supreme@master:~$ ls -l BaseballTeam 
drwxrwxr-x 2 supreme supreme 4096   7월 25 20:05 KBO
drwxrwxr-x 2 supreme supreme 4096   7월 25 20:05 MLB
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.