이 글은 양주종의 코딩스쿨 리눅스(Linux) 기초 강좌 30강 모음을 수강하며 정리한 글입니다.
13강 파일 복사(cp) 삭제(rm)
(일반 사용자 id: j, pw: j)
(관리자 id: root, pw: r)
cp 복사
[j@hj0216 ~/dd]$ cp /etc/a* .
cp: omitting directory `/etc/alternatives'
cp: cannot open `/etc/anacrontab' for reading: 허가 거부
cp: omitting directory `/etc/audisp'
cp: omitting directory `/etc/audit'
[j@hj0216 ~/dd]$ ls
adjtime aliases aliases.db asound.conf
[j@hj0216 ~/dd]$ cp /etc/b* .
cp: omitting directory `/etc/bash_completion.d'
cp: omitting directory `/etc/binfmt.d'
[j@hj0216 ~/dd]$ ls
adjtime aliases aliases.db asound.conf bashrc
[j@hj0216 ~/dd]$ cp -r /etc/b* .
[j@hj0216 ~/dd]$ ls
adjtime aliases.db bash_completion.d binfmt.d
aliases asound.conf bashrc
[j@hj0216 ~/dd]$ cp /etc/a* .
/etc dir에 a로 시작하는 모든 파일 .(현재 dir)로 복사
[j@hj0216 ~/dd]$ cp -r /etc/b* .
/etc dir에 b로 시작하는 모든 파일 및 dir .(현재 dir)로 복사
* r: recursive(재귀적), dir 포함
rm 삭제
[j@hj0216 ~/dd]$ rm a*
[j@hj0216 ~/dd]$ rm b*
rm: cannot remove `bash_completion.d': 디렉터리입니다
rm: cannot remove `binfmt.d': 디렉터리입니다
[j@hj0216 ~/dd]$ ls
bash_completion.d binfmt.d
[j@hj0216 ~/dd]$ rm -r b*
[j@hj0216 ~/dd]$ ls
[j@hj0216 ~/dd]$
[j@hj0216 ~/dd]$ rm b*
현재 dir에서 b로 시작하는 파일 삭제(dir 삭제 불가)
[j@hj0216 ~/dd]$ rm -r b*
현재 dir에서 b로 시작하는 파일 및 dir 삭제
cp 복사 및 이름 바꾸기
[j@hj0216 ~/dd]$ cp /etc/bashrc b3
[j@hj0216 ~/dd]$ ll
합계 16
-rw-rw-r--. 1 j j 0 1월 24 23:30 a
-rw-rw-r--. 1 j j 144 1월 24 23:30 a2
-rw-r--r--. 1 j j 2853 1월 24 23:31 b2
-rw-r--r--. 1 j j 2853 1월 24 23:31 b3
-rw-r--r--. 1 j j 2853 1월 24 23:30 bashrc
cp 복사대상 파일이름
-> 복사대상이 파일이름으로 바뀌어서 복사됨
[j@hj0216 ~/dd]$ cp /etc/bashrc a
[j@hj0216 ~/dd]$ ll
합계 20
-rw-rw-r--. 1 j j 2853 1월 24 23:31 a
-rw-rw-r--. 1 j j 144 1월 24 23:30 a2
-rw-r--r--. 1 j j 2853 1월 24 23:31 b2
-rw-r--r--. 1 j j 2853 1월 24 23:31 b3
-rw-r--r--. 1 j j 2853 1월 24 23:30 bashrc
cp 복사대상 파일이름
-> 만일 현재 dir에 존재하는 파일이름으로 이름 지정 시, 해당 파일에 내용이 덮어 써짐
[j@hj0216 ~/dd]$ cp -i /etc/bashrc a
cp: overwrite `a'? n
단, option -i(interactive) 추가 시, overwrite에 대한 여부 확인
[j@hj0216 ~/dd]$ cp -f /etc/bashrc a2
단, option -f(force) 추가 시, 확인 없이 강제로 덮어 써짐
[j@hj0216 ~/dd]$ cp /etc/bashrc d2
[j@hj0216 ~/dd]$ ls d2
bashrc
cp 복사대상 dir이름
-> 만일 현재 dir에 존재하는 dir이름을 작성 시, 작성된 dir 하위에 해당 파일과 동일한 이름으로 복사됨
rm 삭제 및 추가 옵션
[j@hj0216 ~/dd]$ rm a*
[j@hj0216 ~/dd]$ rm [b-t]*
rm: cannot remove `d2': 디렉터리입니다
rm a*: a로 시작하는 모든 파일 삭제
rm [b-t]*: b-t로 시작하는 모든 파일 삭제(dir 삭제 불가)
[j@hj0216 ~/dd]$ rm -rf *
[j@hj0216 ~/dd]$ ls
rm -rf *: 모든 파일 및 dir 강제 삭제
[j@hj0216 ~/dd]$ cp /etc/* .
[j@hj0216 ~/dd]$ ls a*
adjtime aliases aliases.db asound.conf
[j@hj0216 ~/dd]$ rm [^a]* -f
[j@hj0216 ~/dd]$ ls
adjtime aliases aliases.db asound.conf
rm [^a]* -f: a로 시작하는 파일 제외 모두 강제 삭제
[j@hj0216 ~/dd]$ rm -i *
rm: remove 일반 파일 `adjtime'? y
rm: remove 일반 파일 `aliases'? y
rm: remove 일반 파일 `aliases.db'? y
rm: remove 일반 파일 `asound.conf'? y
rm -i *: 삭제 시, 삭제 여부 확인
'OS > Linux' 카테고리의 다른 글
리눅스 기초 30강 시리즈 - 15강 자주하는 실수 3가지 (0) | 2023.01.25 |
---|---|
리눅스 기초 30강 시리즈 - 14강 이동(mv) 이름 바꾸기(rename) (0) | 2023.01.25 |
리눅스 기초 30강 시리즈 - 12강 경로 이동(cd) 절대경로/상대경로 (0) | 2023.01.24 |
리눅스 기초 30강 시리즈 - 11강 디렉토리 구조 (0) | 2023.01.24 |
리눅스 기초 30강 시리즈 - 10강 파일 내용 보기(cat/nl/more/less) (0) | 2023.01.23 |