파일 관리 명령어
touch CMD
# touch - 파일의 시간 정보를 변경
OPTIONS
-d (--date time) : 현재 시간 대신 지정한 시간(시분)값을 사용, 월 이름, 지역, 'am',등 여러가지 형식 포함
-m (--time=mtime) : 최근 파일 변경 시간(modify time)만 변경 (파일 수정 시간)
-t MMDDhhmm[[CC]YY][,ss] : 현재 시간 대신 지정한 시간 (MM : 달, DD : 날, hh : 시, mm : 분, [CC]YY : 년도, SS : 초)
-a : 최근 파일 사용기간 만 변경
-c : 파일을 생성하지 않는 명령어
-r [파일] : 현재 시간 대신 지정한 파일의 시간으로 변경
-t MMDDhhmm [[CC]YY][,ss] : 현재 시간 대신 지정한 시간(월일시분)으로 변경
명령어 형식
# touch file2 // file2 파일 1개 생성 (파일이 존재하면 시간을 지정)
# touch file1 file2 // file1, file2 파일 2개 생성
# touch -t 08081230 file1 // file1 수정 시간 변경( 월,일,시,분)
빈 파일 생성
cd /test
rm -rf /test/* // 현재 test 디렉터리 에 있는 모든 항목 삭제
touch file1 // file1 파일 생성
ls -l file1
파일의 크기 0
파일의 생성 시간 현재시간으로 변경
# cp -p /etc/passwd file2 // etc/passwd file2 를 test 디렉터리에 복사
ls -l file2 //시간 정보를 확인 10/20 01:31
touch file2 // test디렉터리에 file2 생성 ( 생성x 기존에 있던파일 ) 시간 정보변경.
ls -l file2 //시간 정보를 확인 10/20 16:31 ( 현재시간 )
date // 현재 시간 16:31
touch -t 옵션 사용
touch -t 08301230 file2
ls -l file2
*touch -t 08301230 file1 // 시간을 임의대로 바꿀수 있다.
cp CMD
# cp - 파일 복사
OPTIONS
-i // 명령 에 대해 실행전 확인( 레드햇 계열 alias 에 -i 옵션 선언 되있음 )
-f // 명령 에 대해 묻지 않고 실행
-r // 디렉터리 복제 할때 사용
-p // 속성 정보를 보존하면서 복제
-a // (-r + -p)
명령어 형식
# cp file1 file2 // file1 파일내용을 file2로 생성
# cp file1 dir1 // file1 파일내용을 dir1디렉터리에 file1 생성
# cp -r dir1 dir2 // dir1 디렉터리를 dir2디렉터리로 생성
gedit ~/.bashrc : 편집기 // source ~/.bashrc : 터미널에서 바로
alias tree='tree -C' 컬러표시(cp 명령어 쓸때 유리)
# cp -p httpd.conf httpd.conf.orig
# cp /dev/null file.log (# > file.log)
파일에 대한 inode를 확인
복사 하면서 inode 가 바뀐 걸 확인 할 수 있다
cp 명령어의 -r 옵션
cp -r dir1 dir2
ls -lR
# cp -r /home/fedora/tmp
# cp -r/test /tmp
cp를 이용하여 같은 파일에 덮어 쓰기하는 경우
[ /test]# echo "linux200" > file1 // file1 안에 linux200 입력
[ /test]# cat file1 // file1 출력 보기
linux200
[ /test]# ls -l
합계 8.0K
drwxr-xr-x 2 root root 4.0K 10월 20 16:51 dir1
-rw-r--r-- 1 root root 9 10월 20 16:52 file1
# touch dir1/file1 //동일한 파일명으로 파일생성
# cat dir1/file1 //이름만 동일 할 뿐 내용 다름
# cp file1 dir1 //동일한 파일명에 덮어쓰기
원본 파일의 소유, 그룹, 권한, 허용 시간을 보존한 채로 복사 (cp -p)
# ls -l // file1 파일이 하나 보이고 퍼미션755 이다. rwxr-xr-x
# chmod 777 file1 // file1 퍼미션777로 변경
# ls -l // file1 파일의 퍼미션777로 변경되었다 rwxrwxrwx
# cp file1 file2 // fiel1 을 복사하여 file2를 만든다
# ls -l // 확인 결과 원본 파일의 정보와 다른것을 확인 퍼미션755
# cp -p file1 file3 // -p 를 사용해 복사 한다.
# ls -l // 확인 결과 file1 과 file3 의 정보가 동일하다.
# cp -p 예) 설정 파일을 백업 받고 설정하는 경우
# cd /etc/httpd/conf
# cp -p httpd.conf httpd.conf.old // httpd.conf 파일 백업
# cp -p 예) 로그 파일(EX: file.log) 비우기 ( 파일은 유지 로그만 삭제)
# cp /dev/null file.log // null file.log 의 크기는 0byte
# cat /dev/null > file.log
# > file.log
# cp -p /var/log/messages file.log // 파일의 용량이 200K로 변경
# cp -f /dev/null file.log // 파일의 크기가 0으로 변경
# ls -l file.log
-> 파일의 크기 '0' 확인
mv CMD
# mv - 파일 이동(rename)
OPTIONS
-f (--force) // 대상 파일이 이미 잇어도 사용자에게 어떻게 처리할지를 묻지 않는다.
-i (--interactive) // 대상 파일이 이미 있어, 사용자에게 어떻게 처리할지 물어 본다. y / n
명령어 형식
# mv file1 file2 // file1 파일이 이름이 file2로 변함
# mv file1 dir1 // file1 파일이 dir1 디렉토리에 하위경로로 이동
# mv dir1 dir2 // dir1 디렉터리가 dir2 디렉터리에 하위경로로 이동
mv 명령어 사용법
cd /test ; rm -rf /test/* // 두가지 명령을 ;을 이용하여 한줄에 입력 할수 있다
여러 개의 파일을 동시에 이동
touch f1 f2 f3
mkdir1 d1
mv f* d1 // *f 이라는 파일들을 모두 d1 디렉터리로 이동
[참고] 와일드 카드 문자
하나의 문자가 여러개의 문자의 의미를 포함하는 문자
* : 0 or more character ( 없는것 부터 하나의 문자를 모두 포함 ) (except .file // dot으로 시작하는건 제외)
? : one charater ( 한개의 글자 , 어떤것이든 상관없음 ) 중복되는 이름중에 한글자만 출력
ex)ls file?? : 존재하는 두개의 글자 까지 출력
{ } : 선택적인 하나의 문자열(단어) ex) ls file{1,2,22,3}
[ ] : 선택적인 하나의 문자 ( 대괄호에 포함되어있는 모든 문자)
rm CMD
# rm - 파일 삭제
OPTIONS
-f (--force) : 지울 파일이 없을 경우에 아무런 메세지를 보여주지 않고 넘어감(쉘 스크립트 안에서 유용)
-i (--interactive) : 각 파일을 하나씩 지울 것인지 사용자에게 여부 y / n
-r (--recursive) : 일반 파일이면 그냥 지우고, 경로면 그 하위 경로와 파일 모두 삭제
명령어 형식
# rm file1 // file1 파일 1개 삭제
# rm file1 file2 // file1, file2 파일 2개 삭제
# rm -r dir1 file1 // dir1 디렉터리 하위경로까지 삭제
[참고] 비어 있지 않은 디렉터리 삭제
# rm -rf dir1
[참고] rm 명렁어로 지운 파일 복구(100%장담x)
# debugfs /dev/sda3 // rm 명령어로 지운 파일들을 복원
[TUI]debugfs CMD 사용하는 방법 // ext2, ext3
[TUI]extundelete CMD 사용하는 방법 // ext3, ext4 ( 상위버전 에서 복원할수 있는 명령어 )
rm 명령어 -r 옵션 사용에 대해서
#cd /test
# rm -r /test/*
# mkdir dir1
# touch dir1/file1 dir1/file2
# cat ~/.baschrc
[참고] alias 사용법
(선언) # alias [사용할명령어]='명령어'
ex) # alias cp='cp -i' / 복사 하는데 있어서 확인 여부를 물을것을 선언
(확인) # alias / # alias cp (현재 alias 되있는 항목 나열 / cp 에 대한 alias 정보 출력)
(해제) # unalias 명령어
ex) # unalias cp
레드헷 계열 베포판 에서는 rm,cp,mv 등에 alias -i 가 내장 선언 되어 있다.
gedit ~./bashrc 편집기에 alias선언 입력 시 프로그램 종료 or 재부팅 후에도 선언 효력 고정
( 내가 사용하기 편리하게 고정 선언 할 수 있다.)
'Learning > └Essential & Admin' 카테고리의 다른 글
리눅스 기타 관리용 명령어(1)_Unit5-1 (0) | 2016.10.20 |
---|---|
리눅스 파일 내용 확인 명령어_Unit4 (1) | 2016.10.20 |
리눅스 디렉터리 명령어_Unit2 (0) | 2016.10.20 |
리눅스 기본정보_Unit1-3 (0) | 2016.10.20 |