다음과 같은 하위 디렉터리로 가득 찬 디렉터리가 있습니다.
- 01 - 폴더 제목
- 02 - 두 번째 챔피언십
- 03 - 잠깐
- 04-잠깐. .
- 30 - 최종 폴더
이 모든 폴더 이름을 숫자로 잘라내어 다음과 같이 보이도록 하고 싶습니다.
- 01
- 02
- 03
이 작업을 수행하기 위해 스크립트나 간단한 명령을 작성할 수 있는 방법이 있습니까?
답변1
Perl 기반 이름 바꾸기 유틸리티(Ubuntu에서 제공되는 것으로 보임)를 사용하면 다음과 같이 이름 바꾸기 작업을 수행할 수 있습니다(
*
실제로 원하는 디렉터리 목록으로 바꾸기).
rename 's/^(\S+).*/$1/' *
rename -n
( 실제로 이름을 바꾸기 전에 먼저 이 기능을 사용하여 무엇을 하는지 확인하는 것이 좋습니다 .)
\S+
대체 문자열은 원본 파일 이름( )의 시작 부분에 있는 일련의 공백이 아닌 문자( )와 일치하는 ^
항목( )이 뒤따라야 하며 .*
이를 첫 번째 일치하는 그룹( $1
)으로 대체합니다. 이는 공백이 아닌 초기 문자 부분입니다. .