FIND
Posts
4 posts[Linux] 특정 폴더에 있는 로그파일들을 크기가 크면 자르기
다음과 같이 shell script를 하나 만들어, #!/usr/bin/bashMAX_SIZE=10MLOG_FOLDER=/docker/on_premfind ${LOG_FOLDER}/log -type f -size +${MAX_SIZE} -exec truncate --size=${MAX_SIZE} {} \; crontab에 넣어 두면 됩니다. 크기는 MAX_SIZE 에 크기를 지정해 놓으면 LOG_FOLDER에서모든 하위 폴더에서 *.log 파일인데 크기가 10M바이트가 넘으면 찾아마지막 10M바이트만 남기고 다시 커지게 됩니다. 하루에 한번씩이고 돌리면 됩니다. 어느 분께는 도움이 되셨기를 ..
특정 문자를 기준으로 문자 앞 이나 문자 뒤 데이터 가져오기
엑셀을 사용하다 보면 간혹 한셀에 기업지원실/과장 이렇게 "/"를 기준으로 두데이터가 한셀에 있는 경우가 있는데 부서명의 길이와, 직위의 단위가 같다면 left, right 함수를 사용하여 정리를 하면 간단한데 단위의 길이가 다르면 난감 할 따름입니다. 이럴 경우 사용할수 있는 방법이 있어 알려 드리려고 합니다. 이때 사용 하는 함수는 left, right, 함수 외에 LEN, 함수와 FIND 함수를 사용 하려고 합니다. LEN 함수는 특정 셀의 문자 개수를 구해주는 함수 입니다. FIND 함수는 텍스트 문자열에서 지정한 문자를 검색하고 첫 문자를 기준으로 위치값인 정수를 반환 하는 함수 입니다. 자 그럼 각 셀의 특정 문자의 자리가 가변적인 경우 데이터를 가져 오기는 다음과 같습니다. 우선 "
리눅스에서 cp 명령으로 복사를 하다가 중단한 것을 나중에 재개하는 문제
cp 명령으로 복잡한 디렉토리 구조의 엄청 많은 파일을 복사하던 중에 시간이 없어서 중단하고 내일 다시 이어서 복사를 진행해야 하는 상황이 벌어졌을 경우에 대한 내용이다. 가끔 이런 일이 벌어지는 관계로 작업 절차를 정리해 두기로. # ~/src 디렉토리의 내용 전체를 ~/backup 디렉토리로 복사 cp -r ~/src ~/backup 예를 들어 ~/src 디렉토리를 ~/backup 디렉토리 하위에 복사를 하고 있던 중에 ctrl-c 눌러서 중단을 했는데, 이미 복사된 것들을 다 지우고 다시 처음부터 복사하자니 그동안 들인 시간이 아깝다. 문제는 파일이 워낙 많다 보니, 대체 어느 파일을 복사하다가 중간에 끊어졌느냐를 찾아야 한다는 점. find 명령을 이용해서 ~/backup 하위에서
[bash: find, xargs, for] find 명령으로 추려낸 여러 파일에 대해 같은 작업을 하기 위한 스크립트
find 명령으로 추려낸 파일들을 xargs 명령으로 넘겨서 해당 파일들에 대해 뭔가 작업을 하기 위한 스크립트를 만들 수 있다. 우선 find에 대한 기본적인 내용은 여기로, xargs에 대한 기본적인 내용은 여기로. 작업용 스크립트의 이름을 proc.sh라고 하자. 명령어 실행은 아래와 같은 형태가 될 것이다. # my_file.txt 파일에 대한 작업 bash proc.sh my_file.txt # find 명령으로 추려낸 여러 파일에 대한 작업 find ./ -type f | xargs proc.sh # find와 grep 명령으로 .txt 파일만 추려낸 후 작업 find ./ -type f | grep "\.txt" | xargs proc.sh find 명령으로 몇개


