반응형

개발을 하다 보면 큰 파일들을 다루게 될 때가 종종 있다.
임베디드 개발을 예로 들자면 타겟의 루트 파일 시스템을 직접 flashing 해야 하거나
어느 때는 아주 큰 용량의 core 파일이나 로그 파일을 확인해야 할 때도 있다.

평소에 파일 관리를 잘하고 꼼꼼한 사람들은 안 그러겠지만,
나 처럼 즉흥적으로 처리하는 걸 좋아하거나 여기저기 다른 부서, 고객들로부터 다양한 이슈를 전달 받거나 하다 보면 
어느 순간 부족한 용량으로 인해 당황하게 될 때가 있다.

그럴 때 어디에 뭐가 있는지 찾는 일은 아주 성가시고 번거로운 일인데,
그래서 급하게 하나 만들었다.

큰 파일을 찾는 bash script.
find 기반으로 동작하며 꽤 쓸만하여 공유한다.
사실 한줄 짜리고 find 명령어에 능숙한 사람이라면 크게 의미 없지만 파라미터를 받아서 편하게 쓸 수 있는 장점이 있다...;

언제나 그렇듯 서두가 길었고, 스크립트는 다음과 같다.

#!/bin/bash

MIN_SIZE=${1:-800M}

ROOT_PATH=${2:-/}

find "$ROOT_PATH" -type f -size +"$MIN_SIZE" -exec du -h {} + | sort -rh | head -n 30

 

사용법은 다음과 같다.

 

# 사용법
./${script_path} ${minimum_size} ${search_path}

# 예시
./find_large.sh 1000M /data

 


즉 파라미터로 특정 크기 이상의 파일을 찾기 위해, 파일 탐색을 위한 파일의 최소 사이즈를 넘겨준다.

이를 통해 해당 사이즈보다 큰 파일들만을 검색하게 된다.
그리고 다음 파라미터로 검색을 수행 할 경로를 써주면 된다.

 

급할 때 나름 유용하니 머리 한 편에 이런 글이 있었지 하고 나중에 써먹어보길 바란다.

반응형

'Spadeworks > bash' 카테고리의 다른 글

minicom 키보드 입력 안되는 경우  (1) 2024.09.24
[bash] 명령어 반복  (0) 2023.09.19
[bash] 파일 탐색  (0) 2023.09.10
[bash] bash를 이용한 json 파일 파싱  (0) 2022.08.11
[bash] 특정 길이의 무작위 문자열 획득  (0) 2022.08.11
반응형

Original

If the population of China walked past you in single file, the line would never end because of the rate of reproduction.

해석

만약 중국의 인구가 한 줄로 당신 옆을 지나간다면, 출생률 때문에 그 줄은 결코 끝나지 않을 것입니다.

단어

- population : 인구 (명사)

- China : 중국 (명사)

- walked : 걸었다 (동사)

- past : 지나가다 (전치사)

- single : 한 줄로 된, 단일한 (형용사)

- file : 줄지어 나가다 (동사)

- line : 줄, 선 (명사)

- never : 결코, 절대로 (부사)

- end : 끝 (명사)

- rate : 비율 (명사)

- reproduction : 생식, 번식 (명사)

반응형

+ Recent posts