기계적 인조 인간

리눅스에서 명령 이름 바꾸기 (여러 파일 이름 바꾸기)

In the Clinic with Dr. A Jean Ayres| The Sensory Processing Disorder Foundation

In the Clinic with Dr. A Jean Ayres| The Sensory Processing Disorder Foundation

차례:

Anonim

mv 명령을 사용하여 여러 파일과 디렉토리의 이름을 바꾸면 파이프, 루프 등으로 복잡한 명령을 작성하는 과정이 지루해집니다.

여기서 rename 명령이 유용합니다. 이름의 검색 표현식을 지정된 대체로 바꾸어 지정된 파일의 이름을 바꿉니다.

이 자습서에서는 rename 명령을 사용하여 파일 이름을 일괄 처리하는 방법에 대해 설명합니다.

rename 설치

구문과 기능이 다른 rename 명령에는 두 가지 버전이 있습니다. 우리는 Perl 버전의 rename 명령을 사용할 것입니다.

이 버전이 시스템에 설치되어 있지 않으면 Linux 배포판의 패키지 관리자를 사용하여 설치하십시오.

  • 우분투와 데비안

    sudo apt update sudo apt install rename

    CentOS와 페도라

    sudo yum install prename

    아치 리눅스

    yay perl-rename

rename 사용

다음은 rename 명령의 일반적인 구문입니다.

rename perlexpr files

rename 명령은 기본적으로 Perl 스크립트입니다. 지정된 perlexpr 정규식에 따라 지정된 files 이름을 바꿉니다. 여기에서 Perl 정규식에 대해 읽을 수 있습니다.

예를 들어 다음 명령은 모든 .css 파일의 확장자를 .scss 변경합니다.

rename 's/.css/.scss/' *.css

명령을 더 자세히 설명하겠습니다.

  • s/search_pattern/replacement/ -대체 연산자. .css 검색 패턴 대체 연산자에서 첫 번째 인수입니다. rename 명령은 주어진 파일 이름에서이 패턴을 검색하고 발견되면이를 대체 인수로 rename . .scss 교체 대체 연산자의 두 번째 인수입니다. *.css -“.css”확장자를 가진 모든 파일 와일드 카드 ( * )는 0 개 이상의 문자를 나타내는 데 사용되는 기호입니다.

실제 명령을 실행하고 파일과 디렉토리의 이름을 바꾸기 전에 항상 "건조 실행"을 수행하고 이름을 바꿀 파일을 보여주는 -n 옵션을 사용하는 것이 좋습니다.

rename -n 's/.css/.scss/' *.css

결과는 다음과 같습니다.

rename(file-0.css, file-0.scss) rename(file-1.css, file-1.scss) rename(file-2.css, file-2.scss) rename(file-3.css, file-3.scss) rename(file-4.css, file-4.scss)

기본적으로 rename 명령은 기존 파일을 덮어 쓰지 않습니다. 기존 파일을 덮어 rename 도록 rename 를 지시하는 -f 옵션을 사용하십시오.

rename -f 's/.css/.scss/' *.css

rename -v 's/.css/.scss/' *.css

file-0.css renamed as file-0.scss file-1.css renamed as file-1.scss file-2.css renamed as file-2.scss file-3.css renamed as file-3.scss file-4.css renamed as file-4.scss

이름을 바꾸다

rename 's/\.jpe?g$/.jpg/i' *

결론

rename 명령을 사용하면 Perl 정규식을 사용하여 한 번에 여러 파일의 이름을 바꿀 수 있습니다.

터미널 이름 바꾸기