import os print os.listdir('.') # 현재 디렉토리의 파일 목록 얻기 print print os.listdir('../') # 현재 디렉토리의 부모 디렉토리의 파일 목록 얻기 import os def filetype(fpath): print fpath, ':', if os.path.isfile(fpath): print 'Regular file' if os.path.isdir(fpath): print 'Directory' if os.path.islink(fpath): print 'Symbolic link' flist = os.listdir('.') for fname in flist: filetype(fname) import os def fileaccess(fpath): print fpath, ':', if os.access(fpath, os.F_OK): print 'Exists', else: return if os.access(fpath, os.R_OK): print 'R', if os.access(fpath, os.W_OK): print 'W', if os.access(fpath, os.X_OK): print 'X', print flist = os.listdir('.') for fname in flist: fileaccess(fname) os.chmod('sample.txt', 0777) # 리눅스에서의 실행 예 import os os.rename('t.txt', 't1.txt') # t.txt를 t1.txt로 바꾼다 print os.access('t.txt', os.F_OK) print os.access('t1.txt', os.F_OK) os.rename('t1.txt', 'example/t1.txt') # 현재 작업 디렉토리의 t1.txt를 example에 t1.txt이름으로 옮긴다. print os.access('example/t1.txt', os.F_OK) import shutil shutil.copyfile('sample.txt', 'sample_new.txt') print os.access('sample_new.txt', os.F_OK) import os print os.path.abspath('o.txt') f = '/Users/yhhan/git/python-e-learning/sample.txt' print os.path.exists(f) print os.path.exists('sample.txt') print os.path.exists('asdf.txt') print os.curdir #현재 디렉토리 print os.pardir #부모 디렉토리 print os.sep f = '/Users/yhhan/git/python-e-learning/t.txt' print os.path.basename(f) # 파일명만 추출 print os.path.dirname(f) # 디렉토리 경로 추출 print os.path.split(f) print os.path.splitdrive(f) print os.path.splitext(f) import os print os.getcwd() os.chdir('/Users/yhhan/Public/') print os.getcwd() import os os.mkdir('temp') # 0755 기본 모드(rwxr-xr-x)로 만들어짐 os.mkdir('temp2', 0700) # 0700 모드(rwx------)로 만들어짐 os.makedirs('temp/level1/level2') #0755 기본 모드, 중간에 필요한 디렉토리도 모두생성 print os.access('/Users/yhhan/Public/temp', os.F_OK) print os.access('/Users/yhhan/Public/temp2', os.F_OK) print os.access('/Users/yhhan/Public/temp/level1/level2', os.F_OK) os.rmdir('temp2') #디렉토리에 내용이 없을 때 삭제가능 os.rmdir('temp') #디렉토리에 다른 파일이 있으면 삭제할 수 없음 os.removedirs('temp/level1/level2') import shutil shutil.rmtree('temp') os.mkdir('temp') os.mkdir('temp/temp2', 0700) shutil.copytree('temp', 'myweb_backup') import os os.chdir('/Users/yhhan/git/python-e-learning') print os.getcwd() print for path, subdirs, files in os.walk(os.getcwd()): for fname in files: if fname.endswith('.pyc'): fullpath = os.path.join(path, fname) print 'removing', fullpath os.remove(fullpath)