Utils

파이썬을 이용해서 디렉토리 안의 파일들 이름 바꾸기! (리눅스에서)

jinmc 2022. 1. 19. 13:11
반응형

디렉토리 안의 파일들의 이름을 바꾸기 위해서는 여러가지 방법이 있습니다.

리눅스 안에서는 mv 커맨드를 사용할 수 있고, rename 등 여러가지 다른 커맨드들을 활용할 수 있을 것 같습니다.

또, 리눅스 커맨드로 for loop를 사용할 수 있다고 합니다. (해보진 않았습니다.)

 

관련 코드 : 

# Declares variable with value set to 1
i=1 
# Scans each text file in the working directory
for file in *.txt; 
# Iterate the command below until all files are scanned
do 
  # Renames each file with "File" followed by incrementing number ($i)
	mv -- "$file" "File$i.txt"
  # Increments the variables current number value by 1
  i=$((i+1)) 
done

링크 : https://adamtheautomator.com/rename-file-linux/ 

 

하지만, 사실 python이 익숙한 저로써는 python을 사용하는게 가장 쉽게 느껴집니다.

Python의 os module의 os.rename 함수를 사용하는게 좋은 것 같습니다.

 

# Pythono3 code to rename multiple
# files in a directory or folder
 
# importing os module
import os
 
# Function to rename multiple files
def main():
   
    folder = "xyz"
    for count, filename in enumerate(os.listdir(folder)):
        dst = f"Hostel {str(count)}.jpg"
        src =f"{folder}/{filename}"  # foldername/filename, if .py file is outside folder
        dst =f"{folder}/{dst}"
         
        # rename() function will
        # rename all the files
        os.rename(src, dst)
 
# Driver Code
if __name__ == '__main__':
     
    # Calling main() function
    main()

https://www.geeksforgeeks.org/rename-multiple-files-using-python/

반응형