홈페이지 » 어떻게 » Shell Geek 한 번에 여러 파일 이름 바꾸기

    Shell Geek 한 번에 여러 파일 이름 바꾸기

    파일 이름이 잘못된 수백 개의 파일이있는 디렉토리가 있고 파일 이름이 들어있는 파일을 모두 바꾸려고한다고 가정 해 봅시다. 테스트찌르다. (이것은 인위적인 예입니다). 우리는 bash의 "for"명령과 bash의 장점을 조합하여 쉽게이 작업을 수행 할 수 있습니다. 오늘 for 루프에서 변수의 텍스트를 대체하는 법을 배웁니다..

    "for"명령은 다음과 같이 작동합니다.

    var에 대해, $ var에 대해 do

    대체 할 수 있어요. * 또는 * .txt와 같은 파일 일치 패턴을 사용하면 모든 리눅스 명령. 명령은 파일 일치 패턴과 일치하는 각 파일에서 순서대로 실행됩니다.

    이것은 bash 변수 처리가 더 재미있는 곳입니다. "mv $ var"와 같은 작업을 수행하는 대신 다음 구문을 사용하여 파일 이름의 텍스트를 바꿀 수 있습니다.

    $ var / originaltext / replacetext

    이제 우리의 디렉토리에서이 명령을 실행하면 :

    f에 대해 *; mv $ f $ f / test / prod로 수행; done

    *와 일치하는 각 파일에 대해 bash는 다음과 유사한 명령을 실행합니다.

    mv test.config prod.config

    서버를 관리 할 때나 파일 수집을 관리 할 때 쉘에 대한 지식이 매우 중요하다는 사실을 알았습니다. 그렇지 않으면 수작업으로 된 시간을 절약 할 수있었습니다..

    그리고 네, 여러 파일의 이름을 바꿀 수있는 많은 도구가 있다는 것을 알고 있습니다..