생성된지 하루 이상 경과한 파일들을 선택적으로 지우기 by 바죠

생성된지 하루 이상 경과한 파일들을 선택적으로 지우기 


현재 디렉토리에서 출발해서 특정패턴을 가지는 디렉토리로 순차적으로 진입한다.
파일 이름이 특정한 형식으로 시작할 경우를 따진다.
파일 생성 시간이 1일 이상 경과했는지를 따진다. 
모든 조건을 만족할 경우 해당 해당 파일을 지운다.


---------------------------------------------------------------------------------------------------------------------
import os
import time
apath=os.getcwd()
alist=os.listdir(apath)
blist=[]
for i in alist:
    if i.startswith('0') and len(i) == 4:
        blist.append(apath+'/'+i)

current_time = time.time()
for ipath in blist:
    for f in os.listdir(ipath):
        creation_time = os.path.getmtime(ipath+'/'+f)
        if (current_time - creation_time) // (24 * 3600) >= 1:
            if f.startswith('STDOUT') :
                os.unlink(ipath+'/'+f)
                print('{} removed'.format(f))
            if f.startswith('STDERR') :
                os.unlink(ipath+'/'+f)
                print('{} removed'.format(f))

---------------------------------------------------------------------------------------------------------------------
import os
import time

apath=os.getcwd()
alist=os.listdir(apath)
blist=[]
for i in alist:
    if i.startswith('0') and len(i) == 4:
        blist.append(apath+'/'+i)
current_time = time.time()
for ipath in blist:
    for f in os.listdir(ipath):
        creation_time = os.path.getmtime(ipath+'/'+f)
        ldelete=False
        if (current_time - creation_time) // (24 * 3600) >= 1:
            if f.startswith('STDOUT') :
                ldelete=True
            if f.startswith('STDERR') :
                ldelete=True
            if f.startswith('L2_n.') :
                ldelete=True
            if f.startswith('Lz_n.') :
                ldelete=True
            if f.startswith('S2_n.') :
                ldelete=True
            if f.startswith('Sz_n.') :
                ldelete=True
            if f.startswith('J2_n.') :
                ldelete=True
            if f.startswith('Sz_n.') :
                ldelete=True
            if f.startswith('nd_n.') :
                ldelete=True
            if f.startswith('L23_ominc.') :
                ldelete=True
            if f.startswith('L23_eloss.') :
                ldelete=True
            if f.startswith('L23_pi.') :
                ldelete=True
            if f.startswith('L2_i.') :
                ldelete=True
            if f.startswith('Lz_i.') :
                ldelete=True
            if f.startswith('S2_i.') :
                ldelete=True
            if f.startswith('Sz_i.') :
                ldelete=True
            if f.startswith('J2_i.') :
                ldelete=True
            if f.startswith('Jz_i.') :
                ldelete=True
            if f.startswith('nd_i.') :
                ldelete=True
            if f.startswith('L23_sig.') :
                ldelete=True
            if f.startswith('Jz_n.') :
                ldelete=True
            if ldelete:
                os.unlink(ipath+'/'+f)
                print('{} removed'.format(f))

---------------------------------------------------------------------------------------------------------------------

 cat CSA_SOLDIER.pbs
#!/bin/bash
#SBATCH --partition=g1
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=1
##
#SBATCH -J "edrixs"
#SBATCH -o STDOUT.%j.out
#SBATCH -e STDERR.%j.err
#SBATCH -t 10-24:00:00  # The job can take at most 10 days 24 wall-clock hours.

## don't touch
. /etc/profile.d/TMI.sh
##

#module purge
#module load iomkl

conda init --all --dry-run --verbose
source /home/ihlee/anaconda3/etc/profile.d/conda.sh
conda activate edrixs
export PYTHONPATH=$PYTHONPATH:/home/ihlee/edrixs/edrixs.module

python /home/ihlee/edrixs/LaCoO3/0/1atom_serial_new.py
#python3 mpirun -n 4 1atom_parallel.py

sleep 0.5
touch STOP
echo "DONE" >> STATUS
rm -f CSA_SOLDIER.pbs.e*
rm -f CSA_SOLDIER.pbs.o*
rm -f slurm.*.err
rm -f slurm.*.out




덧글

댓글 입력 영역

최근 포토로그



MathJax