당신은 리눅스 운영 체제에 새로운 있습니까? 그렇다면 파일 및 폴더 이름 바꾸기와 같은 일반적인 작업은 사용하던 작업과 다를 수 있습니다. 그러나 걱정하지 마십시오. 리눅스에서 파일 이름 바꾸기의 개념은 다른 운영 체제에서 수행 하는 방법과 비슷합니다.
이 자습서에서는 리눅스에서 단일 및 다중 파일의 이름을 바꾸는 여러 가지 방법을 배웁니다.
시작하자!
목차
- 필수 구성 요소
- 단일 파일 이름 바꾸기
- 노틸러스 파일 관리자를 사용하여 여러 파일 이름 바꾸기
- 템플릿을 사용하여 파일 이름 바꾸기
- 파일 이름에서 단어 찾기 및 바꾸기
- 파일 이름을 바꾸려면 터미널에서 파일 이름을 바꾸는 방법을 배울 준비를 하십시오. 리눅스 터미널에서 파일 이름을 바꾸는 것은 다른 명령줄 환경에서 하는 것과 비슷합니다. 당신은 대상 파일 이름으로 원래 파일 이름의 이름을 변경하는 명령을 실행하고,그게 다야.
- 뮤직 비디오 명령으로 단일 파일 이름 바꾸기
- 루프에 대한
- 리눅스에서 파일 이름 바꾸기 유틸리티
- 여러 파일 이름 바꾸기
- 파일 확장명 변경
- 잘못된 파일 확장명 대신 파일 이름을 대문자 및 소문자
- 파일 이름에 공백 바꾸기 및 제거
- 파일 이름에 각 단어의 첫 글자를 대문자로
- 결론
필수 구성 요소
이 자습서를 따라하려면 다음 항목이 있어야 합니다:
- 이 튜토리얼은 우분투 18.04 리터을 사용하지만,다른 리눅스 배포판이 작동합니다.
- 관리자 액세스 권한이 있는 계정입니다.파일 관리자로 파일 이름 바꾸기
파일 관리자로 파일 이름 바꾸기 당신이 일반 시야에서 파일을 볼 수 있기 때문에 리눅스에서 사용할 수있는 그 파일 관리자 중 하나는 그놈의 전 파일 관리자,노틸러스입니다. 이 튜토리얼은 노틸러스 파일 관리자를 사용하여 파일의 이름을 변경하는 방법을 보여줍니다.파일 관리자는 파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자,파일 관리자 이러한 파일 관리자는 동일한 작업을 수행하지만 파일이나 디렉토리의 이름을 바꾸는 것은 약간 다를 수 있습니다.
터미널을 실행 한 다음 아래 명령을 실행하여 노틸러스(
install nautilus
)를apt
패키지 관리자로 설치하십시오. 이 명령을 사용하면 다음과 같은 작업을 수행 할 수 있습니다.sudo apt install nautilus
단일 파일 이름 바꾸기
노틸러스에서 단일 파일 이름 바꾸기는 윈도우 파일 탐색기에서와 같이 몇 번의 클릭만 하면 됩니다.
단일 파일의 이름을 바꾸려면 노틸러스를 열고 이름을 바꿀 파일을 마우스 오른쪽 단추로 클릭한 다음 아래와 같이 이름 바꾸기를 선택합니다.
이 예제에서는 파일 이름 바꾸기에 중점을 두지만 파일 및 디렉터리의 이름을 바꾸는 프로세스는 동일합니다.
이제 원본 파일 이름을 대체 할 새 파일 이름을 입력 키를 눌러 입력하거나 이름 바꾸기를 클릭하고 그게 다야.
노틸러스 파일 관리자를 사용하여 여러 파일 이름 바꾸기
윈도우처럼,우분투는 당신에게 당신이 한 번에 여러 파일의 이름을 변경하는 방법에 대한 더 많은 옵션을 제공합니다.
여러 파일의 이름을 바꾸려면 이름을 바꿀 모든 파일을 선택하고 그 중 하나를 마우스 오른쪽 버튼으로 클릭 한 다음 이름 바꾸기를 선택하십시오. 선택한 파일의 이름을 바꿀 방법을 선택할 수 있는 팝업 창이 나타납니다.
아래,선택한 파일의 이름을 변경하는 방법에 따라 선택할 수있는 두 가지 옵션이 있습니다.
- 템플릿을 사용하여 이름 바꾸기–파일 이름을 증분 단위로 바꿀 수 있습니다.
- 텍스트 찾기 및 바꾸기-파일 이름에서 특정 텍스트를 찾아 바꿀 수 있습니다.
템플릿을 사용하여 파일 이름 바꾸기
템플릿을 사용하여 파일 이름을 바꾸려면 템플릿을 사용하여 이름 바꾸기 옵션을 선택합니다.
이제 빈 필드에 대체 이름을 입력하여 템플릿으로 파일 이름을 바꾸고+추가 버튼을 클릭하고 템플릿에서 선택하십시오. 이 자습서에서는 첫 번째(1,2,3,4)를 선택하고 이름 바꾸기를 클릭합니다. 이 옵션은 대체 파일 이름(텍스트 1,텍스트 2,…)다음에 각 파일에 증가 숫자를 추가합니다.
파일 이름이 텍스트로 변경된 다음 숫자가 증가합니다.
파일 이름에서 단어 찾기 및 바꾸기
특정 파일 이름으로 여러 파일의 이름을 바꾸려면 텍스트 찾기 및 바꾸기 옵션을 선택합니다.
기존 텍스트 필드에 텍스트를 입력하고 바꾸기 필드에 대체 텍스트를 입력한 다음 이름 바꾸기를 클릭하여 텍스트를 바꿉니다. 이 옵션은 파일 이름에서 특정 텍스트를 찾아 대체합니다.
지금,당신은 당신이 각 파일 이름에”파일”로 단어”텍스트”를 대체 한 것을 아래에 볼 수 있습니다.
파일 이름을 바꾸려면 터미널에서 파일 이름을 바꾸는 방법을 배울 준비를 하십시오. 리눅스 터미널에서 파일 이름을 바꾸는 것은 다른 명령줄 환경에서 하는 것과 비슷합니다. 당신은 대상 파일 이름으로 원래 파일 이름의 이름을 변경하는 명령을 실행하고,그게 다야.
파일 이름 바꾸기에는 두 가지 시나리오가 있습니다. 첫 번째는 작업 디렉터리에서 파일 이름을 바꾸고 두 번째는 전체 경로를 지정하는 것입니다. 여기서
source
은 원래 이름이고destination
는 대체 이름입니다.# Rename a file or directory in the working directorymv <source> <destination># Rename a file by specifying the full pathmv <~/mydir/source> <~/mydir/destination>
뮤직 비디오 명령으로 단일 파일 이름 바꾸기
뮤직 비디오 명령 구문은 여전히 신선한 동안,의는 하나의 파일의 이름을 바꾸어보십시오.
단일 파일 및 디렉터리의 이름을 변경하는 방법을 보여 주려면
1. 터미널을 실행 한 다음 아래의 일련의 명령을 실행하여 디렉토리와 두 개의 텍스트 파일을 만듭니다.
# Create a directory named 'test'mkdir test # Change directory to ~/testcd test # Create text files named 'file1.txt' and file2.txttouch file1.txt file2.txt
2. 그런 다음
ls
명령을 실행하여 작업 디렉토리 내의 파일을 나열합니다. 아래,당신은 그 파일 1 을 볼 수 있습니다.파일 2.테스트 디렉터리에 있습니다.3. 아래의
mv
명령 중 하나를 실행하여file1.txt
의 이름을file10.txt
로 바꿉니다.# Rename a file in the working directorymv file1.txt file10.txt# Rename a file by specifying the full pathmv ~/test/file1.txt ~/test/file10.txt
디렉토리 이름을 바꾸는 것은 파일 이름을 바꾸는 것과 같습니다.
mv ~/test ~/demo
.~
기호는 홈 디렉토리를 나타냅니다.4. 마지막으로
ls
명령을 다시 실행하여 작업 디렉터리에 파일을 나열합니다.아래에서 해당 파일 1 을 볼 수 있습니다.이제 파일 10 으로 이름이 바뀝니다.티에스트
루프에 대한
여러 파일의 이름을 변경 당신이 손에 다른 작업에 너무 바빠서 한 번에 모든 파일의 이름을 변경하려는 경우,당신은 아래의 것과 같은 루프 문을 사용해야합니다.
아래 코드를 있는 그대로 복사하여 터미널에 붙여넣고 엔터를 누릅니다. 아래 코드는 작업 디렉토리의 각 텍스트 파일을 스캔하고”파일”다음에 증가하는 숫자로 파일 이름을 바꿉니다.
# Declares variable with value set to 1i=1 # Scans each text file in the working directoryfor file in *.txt; # Iterate the command below until all files are scanneddo # 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
터미널에 코드를 붙여 넣기는 잘 작동하지만 대신 실행할 스크립트 파일을 만드는 것이 좋습니다.
아래에서 코드가 모든 파일의 이름을 변경하는 방법을 확인할 수 있습니다.
리눅스에서 파일 이름 바꾸기 유틸리티
일상에서 단일 파일의 이름을 바꾸는 경우
mv
명령으로 충분합니다. 그러나 아마 당신은 한 번에 같은 패턴으로 여러 파일의 이름을 변경하는 것을 목표로하고? 예를 들어 특정 단어(파일)로 시작하는 파일의 이름을 바꿉니다. 이 경우 이름 바꾸기 유틸리티를 대신 설치하십시오.이름 바꾸기 유틸리티는 여러 파일의 이름을 바꾸고,파일 이름 형식을 변경하고,파일을 덮어씁니다.
이름 바꾸기 유틸리티를 설치하려면 작업 중인 리눅스 배포판에 따라 아래 명령을 실행합니다.
# Install rename utility with the apt package manager for Ubuntu, Debian, and Linux Mintsudo apt install rename# Install rename utility with the dnf package manager for CentOS, Fedora, and Red Hatsudo dnf install prename# Install rename utility with the pacman package manager for Arch Linux / Manjaro Linuxsudo pacman -S perl-rename
아래
rename
명령 구문을 볼 수 있습니다.rename <options> <perlexpr> <files>
여러 파일 이름 바꾸기
rename
명령 구문을 염두에두고 동일한 패턴을 가진 파일의 이름을 바꿀 수 있습니다. 무엇rename
명령에 대한 좋은 것은 당신이”루프에 대한 여러 파일 이름 바꾸기”절에서했던 것처럼 여러 파일의 이름을 변경하는 루프 함수를 선언 할 필요가 없다는 것입니다.아마도 당신은 그들에 특정 단어와 파일의 이름을 변경 할 수 있습니다. 만약 그렇다면,아래의 샘플 명령에서 펄 정규 표현식(
's/file/myfile/'
)을 살펴보십시오. 펄 정규 표현식은 펄 프로그래밍 언어를 기반으로 문자열 패턴을 정의합니다.다른 파일의 이름을 잘못 바꾸지 않으려면 아래 그림과 같이
-n
옵션을 추가하여 이름을 바꾸기 전에 영향을 받는 모든 파일을 나열하십시오.rename -n 's/file/myfile/' *.txt
이제 아래
rename
명령 중 하나를 실행하여 작업 디렉토리 또는~/test/*.txt
디렉토리 내의 각 텍스트 파일 이름에file
라는 단어를myfile
로 바꿉니다.펄 식(
's/file/myfile/'
)에서s
는 파일 이름을 바꾸는 것을 의미하는 대체를 나타냅니다.-v
옵션이 추가되어 명령의 이름을 바꾼 파일을 반환합니다.# Replace 'file' with 'myfile' in each file's name in the working directoryrename -v 's/file/myfile/' *.txt# Replace 'file' with 'myfile' in each file's name in the ~/test directoryrename -v 's/file/myfile/' ~/test/*.txt
아래에서 텍스트 파일의 각”파일”단어의 이름이”내 파일”으로 바뀌는 것을 볼 수 있습니다.”
대신 모든 파일의 이름을 바꾸려면 파일 경로를 지정할 때 파일 확장명을 제거하십시오.,
rename -v 's/file/myfile/' ~/test/*
파일 확장명 변경
파일 이름 외에
rename
명령도 파일 확장명의 이름을 바꿉니다. 아마도 당신은 잘못된 파일 확장자를 가진 파일을 만들었습니다. 이 경우rename
명령을 실행할 때 펄 식에서 변경할 파일 확장명을 지정합니다.아래의
rename
명령을 실행하여 모든 파일'(*
)확장자를.txt
에서~/test
디렉토리의.html
로 변경합니다. 펄 식의$
기호는 문자열 끝(.txt
)을 각 파일 이름과 일치하므로 명령은.txt
파일 확장명만 변경합니다. 그리고 여러 파일의 이름을 바꾸는 것과 마찬가지로-v
옵션을 추가하여 명령의 각 변경 사항을 나열하십시오.rename -v 's/.txt$/.html/' *.txt
대신 모든 파일 확장명을 제거하려면 다음과 같이 펄 식에서 대체 문자열을 제거합니다:
rename -v 's/.txt$//' *.txt
당신은 아래 이미지에서 볼 수 있듯이,그만큼.확장 프로그램이 변경되었습니다.웹페이지
잘못된 파일 확장명 대신 파일 이름을 대문자 및 소문자
로 변경하면 파일 이름을 소문자로 처리하거나 그 반대로 처리 할 수 있습니다. 아마도 당신은 대문자로 특별히 파일을 찾기 위해 노력하고,파일 이름을 모르는 것은 소문자입니다.
리눅스는 대소문자를 구분하므로 각 파일 이름의 대소문자를 올바르게 입력해야 합니다. 문자 대소문자는 기본적으로 소문자와 대문자 사이의 텍스트를 구분합니다.
아래
rename
명령 중 하나를 실행하여 작업 디렉토리(*
)의 모든 소문자(a-z
)파일 이름을 대문자(A-Z
)로 변경하고 그 반대의 경우도 마찬가지입니다.# Change filename from lowercase to uppercaserename -v 'y/a-z/A-Z/' *# Change filename from uppercase to lowercaserename -v 'y/A-Z/a-z/' *
파일 이름 문자 대소문자 변경의 두 결과는 아래에서 볼 수 있습니다.
파일 이름에 공백 바꾸기 및 제거
파일 이름의 대소문자처럼 파일 이름에 공백이 있는 경우 파일을 찾는 데 문제가 있을 수 있습니다. 공백을 문자로 바꾸거나 공백을 모두 제거하여 문제를 해결해 보겠습니다.
아래의
rename
명령을 실행하여 모든 파일 이름의 공백을 작업 디렉터리의 밑줄(_
)로 바꿉니다. 밑줄은 메타 문자이므로 백슬래시(\_
)로 이스케이프하여 밑줄을 문자 그대로 선언합니다. 메타 문자는 컴퓨터 프로그램에서 특별한 의미를 가진 특수 문자입니다.주의 사항 펄 식의
g
은 첫 번째가 아니라 모든 일치 항목(공백)을 바꾸라는 명령을 지시합니다.rename -v 's/ /\_/g' *
아래에서 명령이 모든 공백을 밑줄로 대체 한 것을 볼 수 있습니다.
파일 이름의 모든 공백을 문자로 채우는 대신 제거하려면 아래 명령을 실행하십시오.
아래의 펄 식에서 공백 뒤에 있는 별표(
/ *
)는 첫 번째 공백이 아닌 파일 이름의 모든 공백과 일치합니다. 대체 문자가 비어 있으므로(//
)rename
명령은 모든(g
)공백을 제거합니다.rename -v "s/ *//g" *
이제 아래에서 각 파일 이름에서 모든 공백이 제거되었음을 확인할 수 있습니다.
파일 이름에 각 단어의 첫 글자를 대문자로
공백을 유지하고 파일 이름에 각 단어의 첫 글자를 대문자로 대신 사용하려면 더 복잡한 펄 식이 필요합니다. 아래의 샘플 명령을 살펴보십시오.
아래 펄 식은 문자가 마침표나 아포스트로피(
?<!
)가 아닌 한 단어 경계(\b
)의 단일 문자(\w
)와 일치합니다. 그러면rename
명령이 해당 문자를 대문자(u$&
)로 변환합니다.rename -v 's/(?<!)\b\w*/\u$&/g' *
아래에서 파일 이름의 각 단어는 대문자로 시작하여 파일 확장자는 그대로 두는 것을 볼 수 있습니다.
결론
이 튜토리얼을 통해,당신은 리눅스 명령 줄 터미널을 통해 파일의 이름을 변경하는 많은 방법을 배웠습니다. 이제 한 번에 단일 및 다중 파일의 이름을 조작하는 방법에 대한 확실한 이해가 있습니다.
왜 리눅스 쉘 스크립팅을 배우고,리눅스에서 파일의 이름을 변경 자동화하는 스크립트를 만들 수 없습니다?