파일 옮기고 이름 바꿀 수있는 명령어? mv
mv {move} - 파일 디렉토리 이동
#mv [옵션] [소스(원본)] [타켓]
-f 파일 이동 시 대상 경로에 파일이 있다면 물어보지 않고 덮어 쓴다.
ex) #mv ls /practice/
ex) #mv ls_123 ls_456 (이름 변경) = ls_123 ->ls_456으로 바뀜(왼쪽은 원본 폴더명, 오른쪽은 변경하고자하는 폴더명)
ex )mv /practice/mv-test /practice/day1
옮기고자하는 폴더위치 옮기는 폴더위치
rm (remove) - 파일 삭제
#rm [옵션] [타켓]
-f 삭제시 물어보지 않고 삭제
-r, -R (recursive) 하위 디렉토리 및 파일을 포함하여 삭제
-i (interactice) 삭제 여부를 사용자에게 확인(기본값)
ex) rm -f 지울파일
cat (conCATenate) - 파일 내용 확인 (아주중요)
#cat [옵션] [파일]
-n(number)라인 번호를 포함하여 출력
30줄
-b(blank) 라인 번호 출력, 공백은 제외
공백 제외해서25줄
ex) #cat /etc/resolv.conf // /etc/resolv.conf 파일의 내용 확인
#cat /etc/passwd
#cat -b /etc/passwd
touch - 파일의 시간정보(timestamp) 변경
-t [timestamp]
timestamp 형식 : [ [CC]YY ]MMDDhhmm[.ss]
CCYY MM DD hh mm
ex) 2017년 03월 25일 13시 50분
파일에 적용되는 시간 정보
1. 접근 시간(access time) - 파일 열거나 접근(실행)한 시간
-#ls -lu [file]
2. 변경 시간(change time) - 파일의 정보(속성,퍼미션)가 변경된 시간
-#ls -lc [file]
3. 수정 시간(modify time) - 파일의 내용이 변경된 시간
-#ls -l
touch ex)
#cp /bin/ls /practice/
#ls -l
CCYYMMDDhhmm
#touch -t 201803251010 ls
#ls -l
빈 파일 생성 (크기가 0KB)
#touch [file]
ex) #touch file1
#touch file2
#touch file{3..5}
#touch file{6,7,8}
#ls -l
#cat file1
#cat file2
크기 수정 시간 파일명
-rw-r--r--. 1 root root 0 2017-03-25 04:53 file1
-rw-r--r--. 1 root root 0 2017-03-25 04:53 file2
-rw-r--r--. 1 root root 0 2017-03-25 04:53 file3
-rw-r--r--. 1 root root 0 2017-03-25 04:53 file4
-rw-r--r--. 1 root root 0 2017-03-25 04:53 file5
-rw-r--r--. 1 root root 0 2017-03-25 04:53 file6
-rw-r--r--. 1 root root 0 2017-03-25 04:53 file7
-rw-r--r--. 1 root root 0 2017-03-25 04:53 file8
#stat [파일명] -파일의 자세한 정보 확인
ex) #stat file1
date - 시스템 시간 확인 /수정
-s "CCYY -MM-DD hh:mm:ss"
ex) #date //현재 시스템 시간 확인
ex) #date -s "2017-07-18 09:30" //날짜,시간 변경
ex) #date -s "12:30" // 시간 변경
ex) #date -s "20181010" // 날짜 변경 (시간 초기화)
실습 예제
1. /practice/file_test/ 디렉토리 생성.
#mkdir /practice/file_test/
2. /practice/file_test/ 디렉토리 아래 하위 디렉토리 생성. (단, 명령어 한줄이용)
/practice/file_test/bin_a/
/practice/file_test/bin_b/
1.#mkdir /practice/file_test/bin_a /practice/file_test/bin_b
(절대경로)
2.#mkdir bin_a bin_b(상대경로1)
2-1. #mkdir ./bin_a ./bin_b(상대경로2)
3. #mkdir bin_{a,b}
3. /bin/ 경로에 있는 a로 시작하는 모든 파일을 /practice/file_test/bin_a/ 디렉토리에 복사.
/bin/ 경로에 있는 b로 시작하는 모든 파일을 /practice/file_test/bin_b/ 디렉토리에 복사.
1. cp /bin/arch /bin/awk /practice/file_test/bin_a
현재경로가 bin_a일때 cp /bin/a* ./ (*=a로시작하는 모든)
2. cp /bin/basename /bin/bash /practice/file_test/bin_b
현재경로가 bin_a일때 cp /bin/b* ../bin_b(*=b로시작하는 모든)
4. /etc/resolv.conf 파일을 /practice/file_test/ 디렉토리로 복사.
5. /practice/file_test/resolv.conf 파일의 내용과 /etc/resolv.conf 파일이 동일한 내용 인지 확인.
#cat 사용
6. /practice/backup 디렉토리 생성 후
/practice/file_test/resolv.conf 파일을 /practice/backup/ 으로 이동
#mv 이동
7. /practice/backup 디렉토리에 아래와 같이 파일을 생성
- 빈 파일 생성
- 파일1 : yesterday_file
- 파일2 : now_file
파일1 생성 시 시스템 시간 기준 어제날짜로 생성 1. #touch -t [어제날짜시간] [파일명]
ex) touch -t 201703241010 file
파일2 생성 시 현재 시간으로 생성 1. #touch -t [오늘날짜시간] [파일명]
2. #touch [파일명]
'리눅스 ' 카테고리의 다른 글
파일에 관련된 명령어 (0) | 2017.03.25 |
---|---|
실습 예제 복습 (0) | 2017.03.25 |
디렉토리 생성과 사용(Snapshot 사용) (0) | 2017.03.19 |
파일의 종류와 명령어 (0) | 2017.03.19 |
Bash Shell의 명령어와 각종 간편 명령어 (0) | 2017.03.19 |