리눅스에서 서버 용량을 체크해서 파티션이 다 차기 전에 지워야 하는 상황이 생겼다.
그런데 어느 파일의 용량이 증가했는지 확인 하기가 어려운 경우 ls 를 통해서 확인이 가능하다.
■ ls 옵션
-R : 지정한 디렉토리이하에 있는 하부디렉토리와 파일들을 모두 포함한다.(Recursive)
-r : 출력결과를 정열할 때에서 내림차순으로 정렬한다.(Descending)
-S : 파일사이즈가 가장 큰 것부터 순서대로 나열한다.
-l : 파일들을 나열할때 자세히 출력한다.
-a : 경로안의 모든 파일을 나열한다.(숨김파일도 포함)
-h : 파일사이즈를 용량단위(Mb,Gb)를 붙여서 출력해 준다.
-n : 파일의 소유자와 소유그룹을 표기할때 숫자로 UID, GID를 출력한다.
-U : 디스크의 저장순서대로 파일을 나열한다.
-i : 각 파일들의 색인번호(inode)를 각 행의 맨 앞에 출력한다.
-1(숫자1) : 한 줄에 한 파일씩만 나열한다.
-X : 확장자별로 정열하여 나열한다.
-F : 파일의 종류별로 파일의 끝에 특수문자를 표시한다(일반파일: 아무표시없음, 실행파일: *, 디렉토리: /, 심볼릭링크: @, FIFO파일: |, 소켓파일: =)
-c : 파일의 가장 최근에 변경(속성, 권한, 크기 등)된 시간에 따라 정렬해 보여준다.
-m : 정렬될 모든 파일과 디렉토리를 세로가 아닌 가로로 배열해서 보여준다. (' , '로 구분함)
■ ls로 확인하는 시간개념
문법 | 내용 | |
atime(File Access Time) | # ls -ul | * 파일 : vi 등으로 열어본 시간 * 디렉토리 : cd로 접근하여 ls로 디렉토리의 내용을 확인해본 시간 |
mtime(File Change Time) | # ls -l | 파일의 내용이 달라졌을 때 데이터 수정 시간 파일의 권한이나 소유자 등의 속성값을 변경할 때는 ctime에만 반영될 뿐 mtime에는 영향을 미치지 않는다. 하지만 데이터를 수정해 파일 크기 또는 mtime이 변한다면 이것 역시 파일속성 중 하나이므로 ctime 값은 함께 변하게 된다. 즉 ctime > mtime 으로 ctime이 mtime에 비해 더욱 포관적인 개념이라고 할 수 있다. |
ctime(File Modify Time) | # ls -cl | 파일의 데이터 혹은 각종 속성값이 변경된 시간 권한, 소유자, 파일크기 등 모든 종류의 속성값이 변경된 시간 |
■ ls로 grep 하기
1. 특정 파일 검색
- 파일명을 ' ' 또는 " "로 감싸거나 감싸지 않아도 가능
[root@localhost ~]# ls -al | grep 'okf_crypt'
2. 특정 파일의 특정 단어 포함
- * 앞에 , 또는 . 사용해야 검색이 된다. ( 두개의 차이는 좀 찾아봐야 겠다. )
[root@localhost ~]# ls -al | grep ',*okf_crypt*'
[root@localhost ~]# ls -al | grep '.*okf_crypt*'
- 특수문자가 있는경우 : 테스트 해봤는데 역슬러시(\) 없어도 검색이 되는데.. 흠..
[root@localhost ~]# ls -al | grep '*\.gz'
[root@localhost ~]# ls -al | grep '*[.]gz'
3. 특정 파일의 특정 단어 포함 하여 용량 체크
- 원하는 파일명으로 조회
[root@localhost ~]# ls -alh | grep ',*okf_crypt*'
- 결과
- 조회 결과 값에 대한 용량 체크
[root@localhost ~]# ls -alh | grep ',*okf_crypt*' | awk '{result += $5} END {print result}'
# 옵션설명
# {result += $5} : 결과 항목의 5번째 항목의 값을 계속 더하면서 result 변수에 저장
# END {print result}: 마지막 결과만 출력
4. 특정 파일 내부의 특정 문자열 포함
- txt 파일 중 /pds 가 포함되어 있는 파일 및 내용 출력
[root@localhost ~]# ls -al | grep '\/pds' ./*.txt
- txt 파일 중 /pds 가 포함되어 있는 파일 및 내용 출력 중 첫번째 정보만 출력
[root@localhost ~]# ls -al | grep '\/pds' ./*.txt | awk '{print $1}'
'리눅스' 카테고리의 다른 글
[리눅스] Centos 7 이하 NFS(Network File System) 설정하기 (0) | 2020.08.04 |
---|---|
[리눅스]쉘 스크립트 정복하기 (0) | 2020.07.30 |
[리눅스] CentOS 6 Python 3.6 설치 (0) | 2020.07.02 |
[리눅스] Red Hat Linux 와 CentOS 란? (0) | 2020.07.02 |
[리눅스]CentOS 6 node.js 설치 (0) | 2020.07.01 |