In the Clinic with Dr. A Jean Ayres| The Sensory Processing Disorder Foundation
차례:
파일 및 디렉토리 이름 바꾸기는 Linux 시스템에서 수행해야하는 가장 기본적인 작업 중 하나입니다.
단일 파일의 이름을 바꾸는 것은 쉽지만, 한 번에 여러 파일의 이름을 바꾸는 것은 특히 Linux를 처음 사용하는 사용자에게는 어려울 수 있습니다. GUI 파일 관리자를 사용하거나 명령 행 터미널을 통해 파일 이름을 바꿀 수 있습니다.
이 자습서에서는
mv
및
rename
명령을 사용하여 파일 및 디렉토리의 이름을 바꾸는 방법을 보여줍니다.
mv 명령으로 파일 이름 바꾸기
mv
명령 (이동에서 짧음)은 파일의 이름을 바꾸거나 한 위치에서 다른 위치로 파일을 이동하는 데 사용됩니다.
mv
명령의 구문은 다음과 같습니다.
mv source destination
source
는 하나 이상의 파일 또는 디렉토리 일 수 있으며
destination
은 단일 파일 또는 디렉토리 일 수 있습니다.
- 여러 파일을
source
로 지정하면destination
은 디렉토리 여야합니다. 이 경우source
파일이 대상 디렉토리로 이동됩니다. 단일 파일을source
로 지정하고destination
대상이 기존 디렉토리 인 경우 파일이 지정된 디렉토리로 이동됩니다. 파일 이름을 바꾸려면 파일 이름을 지정해야합니다. 단일 파일은source
이고 단일 파일은 대상입니다.
예를 들어,
file1.txt
파일의 이름을
file2.txt
로 바꾸려면
file1.txt
을 실행하십시오.
mv 명령으로 여러 파일 이름 바꾸기
mv
명령은 한 번에 하나의 파일 이름 만 바꿀 수 있지만
find
또는 inside bash for 또는 while 루프와 같은 다른 명령과 함께 사용하여 여러 파일의 이름을 바꿀 수 있습니다.
다음 예제는 Bash for 루프를 사용하여
.html
확장자를
.php
로 변경하여 현재 디렉토리의 모든
.html
파일의 이름을 바꾸는 방법을 보여줍니다.
for f in *.html; do mv -- "$f" "${f%.html}.php" done
코드를 한 줄씩 분석해 봅시다:
- 첫 번째 줄은 for 루프를 만들고
.html
테두리가있는 모든 파일 목록을 반복합니다. 두 번째 줄은 목록의 각 항목에 적용되며.html
을.php
바꾸는 새 파일로 파일을 이동합니다.${file%.html}
부분은 shell 매개 변수 확장을 사용하여 filename.done에서.html
부분을 제거합니다. 루프 세그먼트의 끝을 나타냅니다.
mv
명령을
find
와 함께 사용하여 위와 동일한 결과를 얻을 수도 있습니다.
find. -depth -name "*.html" -exec sh -c 'f="{}"; mv -- "$f" "${f%.html}.php"' ;
find 명령은
-exec
스위치를 사용하여 현재 디렉토리에서
.html
로 끝나는 모든 파일을
mv
명령으로 하나씩 전달합니다. 문자열
{}
은 현재 처리중인 파일의 이름입니다.
위의 예에서 볼 수 있듯이
mv
명령을 사용하여 여러 파일의 이름을 바꾸는 것은 Bash 스크립팅에 대한 충분한 지식이 필요하므로 쉬운 작업이 아닙니다.
rename 명령으로 파일 이름 바꾸기
rename
명령은 여러 파일의 이름을 바꾸는 데 사용됩니다. 이 명령은 정규식에 대한 기본 지식이 필요하기 때문에
mv
보다 고급입니다.
구문이 다른
rename
명령에는 두 가지 버전이 있습니다. 이 튜토리얼에서는 perl 버전의
rename
명령을 사용합니다. 시스템에이 버전이 설치되어 있지 않은 경우 배포판의 패키지 관리자를 사용하여 쉽게 설치할 수 있습니다.
-
우분투와 데비안에서 설치 이름 바꾸기
sudo apt install rename
CentOS 및 Fedora에 설치 이름 변경
sudo yum install prename
Arch Linux에서 이름 바꾸기 설치
yay perl-rename ## or yaourt -S perl-rename
rename
명령의 구문은 다음과 같습니다.
rename perlexpr files
rename
명령은 지정된
perlexpr
정규식에 따라 모든
files
의
rename
을 바꿉니다. 여기에서 펄 정규 표현식에 대해 할 수 있습니다.
예를 들어 다음 명령은 확장자가
.html
모든 파일을
.php
변경합니다.
rename 's/.html/.php/' *.html
-n
인수를 사용하여 이름을 바꾸지 않고 이름을 바꿀 파일 이름을 인쇄 할 수 있습니다.
rename -n 's/.html/.php/' *.html
결과는 다음과 같습니다.
rename(file-90.html, file-90.php) rename(file-91.html, file-91.php) rename(file-92.html, file-92.php) rename(file-93.html, file-93.php) rename(file-94.html, file-94.php)
기본적으로 rename 명령은 기존 파일을 덮어 쓰지 않습니다. 기존 파일을
-f
쓰려면
-f
인수를 전달하십시오.
rename -f 's/.html/.php/' *.html
다음은 rename 명령을 사용하는 방법에 대한 몇 가지 일반적인 예입니다.
-
파일 이름의 공백을 밑줄로 바꿉니다.
rename 'y/ /_/' *
파일 이름을 소문자로 변환
rename 'y/AZ/az/' *
파일 이름을 대문자로 변환
rename 'y/az/AZ/' *
결론
이제
mv
및
rename
명령을 사용하여 파일의 이름을 바꾸는 방법에 대해 잘 알고 있어야합니다. 물론 Linux에서
mmv
와 같은 파일 이름을 바꾸는 다른 명령이 있습니다. 명령 행에 위협을받는 새로운 Linux 사용자는 Métamorphose와 같은 GUI 배치 이름 바꾸기 도구를 사용할 수 있습니다.
Advanced Renamer는 Windows에서 여러 파일의 이름을 바꾸는 데 사용할 수있는 배치 파일 이름 바꾸기 유틸리티입니다. 이름 바꾸기 방법을 구성하고 한 번에 여러 파일 및 폴더의 이름을 바꿉니다.

대부분의 사용자는 순서가 맞지 않고 잘못 명명 된 파일을 가지고 있습니다. 각각의 이름을 하나씩 변경하는 것은 어려운 작업입니다. 하지만 작업을 쉽게하기 위해 배치 파일 이름 바꾸기 유틸리티가 꽤 많이 있습니다. 그 중 하나가
Cortana가 나에게 전화하는 이름을 바꾸는 방법

Cortana가 Windows 10에서 부르는 이름을 어떻게 바꿀 수 있는지 확인하십시오. Cortana를 만드십시오. 이 트릭을 사용하여 별명으로 전화하십시오.
리눅스에서 디렉토리의 크기를 얻는 방법

du 명령은 지정된 파일 또는 디렉토리가 사용하는 파일 공간의 양을 표시합니다.